【发布时间】:2020-05-02 09:29:53
【问题描述】:
首先我将展示一个例子:
void main(void){
char word[12];
char input[12];
int i;
printf("Input some word: ");
scanf("%s",input);
for(i=0;i<strlen(input);i++)
word[i]=NULL;
if(word[i]==NULL){
printf(" %c ",word[i]);
}
}
正如你所看到的,我给 word[i] 一个 NULL 值,它会发出警告“警告赋值从没有强制转换的指针中生成整数”,然后下一个警告是 if“指针和整数之间的警告比较”。 那么我该如何解决这个警告,存在其他选项而不是给出 NULL 值?
【问题讨论】:
-
word[i](对于每个有效的i)是char;NULL不是char并且(在您的实现中)不兼容,因此您会收到警告。使用'\0'而不是NULL。 -
好的,非常感谢。顺便说一句,我是新来的,问题解决后我需要对帖子做些什么吗?
-
如果您喜欢以下答案之一,请将其标记为已接受。您还可以将多个标记为有帮助。
标签: c error-handling