gpt4 book ai didi

C 中的冲突类型和先前的隐式声明

转载 作者:行者123 更新时间:2023-11-30 15:08:05 25 4
gpt4 key购买 nike

The error message

skeleton.c:86:6: warning: conflicting types for ‘verifyWord’ [enabled by default]
void verifyWord(char nword) {
^
skeleton.c:79:3: note: previous implicit declaration of ‘verifyWord’ was here
verifyWord(nextword);
^
<小时/>
void playgame() {
.
.
.
strcpy(curword, get_random_word(dictptr));

for(;;) {
.
.
.
/*function for nextword if correct*/
verifyWord(nextword);
/* */
} /* end for loop */
.
.
.
}
<小时/>
void verifyWord(char nword) {
FILE * fp;

fp = fopen ("usedWords.txt", "a+");
fprintf(fp, "%d ", nword);

fclose(fp);
}

嗨,这个程序应该是一个迷你文字游戏,我是 C 新手。需要一些帮助来弄清楚如何避免 imgur 图像中显示的错误。

上面2个是playgame函数和verifyWord函数

当我尝试在 main 之上声明时,请为我指明正确的方向:

  • 验证Word();
  • char verifyWord(void);
  • char verifyWord();

最佳答案

您需要使用您愿意传入的参数正确声明该函数。

例如,verifyWord 返回 void 并接受 char 指针 作为参数。

正确的声明是:

void verifyWord (char *nextWord);

你将像这样使用它:

char* nextWord = NULL;

verifyWord(nextword);

您的问题是您没有告诉编译器如何处理该函数。您需要有显式声明,就像我上面提到的那样,放置在调用它的行之前的某个位置,并且它必须在同一范围内。

关于C 中的冲突类型和先前的隐式声明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37701411/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com