【发布时间】:2014-10-28 21:35:02
【问题描述】:
关于为什么我尝试编译 此 代码以检查文件 atadata 中的一行是否收到警告的任何想法:
warning: implicit declaration of function ‘strrev’ [-Wimplicit-function-declaration]
代码
#include <stdio.h>
#include <string.h>
int main(){
char palindromes[100];
char reverse[100];
FILE *atadata = fopen("atadata","r");
while (fgets(palindromes,sizeof(palindromes),atadata) != NULL){
strcpy(reverse,palindromes);
strrev(reverse);
if( strcmp(atadata,reverse) == 0)
fputs(atadata, stdout);
}
fclose(atadata);
return 0;
}
【问题讨论】:
-
string.h中是否有定义?
-
没有
strrev,除非你写过一个。 (那么你需要在声明中包含标题) -
另请注意 fget 包含换行符。
-
@DavidC.Rankin - 我的意思是声明,但我累了:(
-
@SeanO'Brien 打开文本编辑器,输入必要的代码,将其保存为文本文件并使用 C 编译器进行编译。
标签: c palindrome implicit-declaration