黑马程序员技术交流社区
标题:
5、 在一个已知的字符串中查找最长单词,假定字符串中只...
[打印本页]
作者:
胡铭
时间:
2014-4-27 11:53
标题:
5、 在一个已知的字符串中查找最长单词,假定字符串中只...
5、 在一个已知的字符串中查找最长单词,假定字符串中只含字母和空格,空格用来分隔不同单词。(C语言)
char* function(char* str)
{
int i,j,len,maxlen,x,y,maxx,maxy;
char s[40];
len = strlen(str);
maxlen=0;
x=-1;
y=0;
for(i=0;i<len;i++)
{
if(str[i]==' ')
{
if(y>x)
{
x=i;
}
else
{
y=i;
if(y-x>maxlen)
{
maxlen=y-x;
maxx=x;
maxy=y;
}
}
}
}
j=0;
for(i=maxx+1;i<maxy;i++,j++)
{
s[j]=str[i];
}
return s;
}
总是报错,说function函数返回值不能为char*什么的
作者:
一只小菜鸟
时间:
2014-4-27 12:35
本帖最后由 一只小菜鸟 于 2014-4-27 13:04 编辑
抱歉。。。。。。
char *test() {;
char *c = "hello"; //只能返回这样定义的字符串吧。。。
return c;
}
int main() {
printf("%s", test()); //hello
}
复制代码
作者:
董月峰
时间:
2014-4-27 17:02
j=0;
for(i=maxx+1;i<maxy;i++,j++)
{
s[j]=str[i];
}
s[maxlen] = '\0';
// 楼主把这段代码填个字符串结尾试试
return s;
复制代码
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2