我定义了一个如下数组
const char *limit[]={"(", ")", "[", "]", ",".","!",",",";","{","}","#","_","'"};/*限界符*/在文件中一个一个字符读出来再与上面的比较,若在其中返回1不在其中返回0,
从文件中读取 的字符保存在sign[0]中,其有一个sin[1]='\0'是用于防止输出越界的
在一个函数中这样比较int i=0;
while(limit[i])
if(strcmp(str,limit[i++])==0)return 1;
return 0;
但为什么老是返加1呢,比如我读了个“+”号,居然也返回1,我晕!
const char *limit[]={"(", ")", "[", "]", ",".","!",",",";","{","}","#","_","'"};/*限界符*/在文件中一个一个字符读出来再与上面的比较,若在其中返回1不在其中返回0,
从文件中读取 的字符保存在sign[0]中,其有一个sin[1]='\0'是用于防止输出越界的
在一个函数中这样比较int i=0;
while(limit[i])
if(strcmp(str,limit[i++])==0)return 1;
return 0;
但为什么老是返加1呢,比如我读了个“+”号,居然也返回1,我晕!
const char limit[]={'(', ')', '[', ']', '.', '!', ',', ';', '{', '}', '#', '_', '\''};str类型改为char(strcmp(str,limit[i++])==0)改为(str==limit[i++])