c - 尝试使用带指针的函数复制最长的单词
问题描述
#include <stdio.h>
#include <stdlib.h>
void longest_word(char *str[100], char *max[20]) {
int i,j,length,longest,start,end;
length=strlen(str);
longest=0; start=0; end=0;
for (i=0;i<strlen(str);i++)
{
if (str[i]=' ')
{
length=end-start;
if (longest < length)
for (j=0;j<length;j++)
{
max[j]=str[start];
start++;
}
longest = length;
start=i+1;
}
else
{
end++;
}
}
}
int main()
{
char str[100]="Happiness can be found even in the darkest of places";
char max[20], min[20];
longest_word(str,max);
printf("Longest word is %c",max);
return 0;
}
我要做的是从给定的字符串中复制最长的单词。虽然使用了这个功能,但它并没有真正奏效。不确定我的逻辑是否有缺陷或我将字母复制到max[20]
字符串的方式。有任何想法吗?
解决方案
推荐阅读
- php - AJAX 调用返回 PHP 值为空
- javascript - 组件未使用钩子更新 Map(字典)状态更改
- intellij-idea - 像intellij的文本选择一样崇高丢失
- c# - 打开新页面时,它与 NavigationView 菜单重叠
- java - 与 compareTo 相关的溢出错误
- c - 在C中将数字数组乘以int
- python - 顽固分子使用 python 的原始二进制流
- php - 邮件服务器收到邮件后执行 PHP 脚本
- node.js - 如何在 MEAN 堆栈中的 angularjs 文件中加载控制器
- graphql - 使用 apollo 服务器运行此查询时出现 GraphQL 错误。任何人都知道它有什么问题吗?