黑马程序员技术交流社区
标题:
前辈们,帮忙看下这个FOR语句哪里有问题。
[打印本页]
作者:
aofex
时间:
2015-6-1 09:45
标题:
前辈们,帮忙看下这个FOR语句哪里有问题。
#include <string.h>
#include <stdio.h>
int char_contains(char str[],char c);
int main ()
{
int result = char_contains("itcast",'0');
printf("%d\n",result);
return 0 ;
}
int char_contains(char str[],char c)
{
16 for (int i=0; i<strlen(str);i++)
{
18 if(str[i])==c)
{
return 1;
}
}
return 0;
}
前辈们,我的系统是windows7 32位的,装的是codeblocks的,在编译上述编码的时候老是提示16,和18行有问题,唉,照视频上打的,实在看不出哪里有问题。。。。
作者:
飞翔的猪
时间:
2015-6-1 10:00
应该是第十五行的错吧,char *str[]
作者:
张晓珊
时间:
2015-6-1 10:06
18 行少了半个括号,字符串参数一般用指针传吧。
作者:
13673696542
时间:
2015-6-1 12:57
楼说的对,你的if语句那括号不是成对出现的,少了一个。
作者:
aofex
时间:
2015-6-1 16:21
飞翔的猪 发表于 2015-6-1 10:00
应该是第十五行的错吧,char *str[]
:( 改了 也不行,弄一下午了 悲催的!!!
作者:
aofex
时间:
2015-6-1 16:23
张晓珊 发表于 2015-6-1 10:06
18 行少了半个括号,字符串参数一般用指针传吧。
会不会是编译器的问题呢???已经把那半个括号去了 补行!!!
作者:
小龙女的萝卜
时间:
2015-6-1 18:30
你是想要什么样的结果呢?把括号补上,试了下,没有报错,结果是0啊,
这个程序的意思很用函数查找输入字符串中是否有某个字。你传入字符串itcast,要查找的字符是'0',而这个字符串例没有 ‘0’ 这个字符,所以输出结果是0,当地把‘0’换成‘i’等字符就会显示输出1了
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2