【发布时间】:2013-04-15 00:31:37
【问题描述】:
我有一个名为 tempA 的指针,它指向一个结构:
struct SLNode *tempA;
我有一个名为sl_find Node()的函数我这样称呼它:
tempA = sl_findNode(&list, word);
函数sl_findNode() 如下所示:
struct SLNode* sl_findNode (struct SLNode **list, char *str1) {
assert (list);
struct SLNode *curr = *list;
while (curr) {
if (strcmp(curr->word, str1) == 0) {
return curr;
}
curr = curr->next;
}
return NULL;
}
最后,list 声明如下:
struct SLNode *list = NULL;
编译器在第 77 行给了我警告:
tempA = sl_findNode(&list, word);
有人知道为什么吗?
Word 是一个字符数组:
char word[30];
我从文本文件中读取字符并循环添加到 word 中
【问题讨论】:
-
你对
word的定义是什么? here 是一个可能的原因。 -
我已经更新了单词是什么
-
使用
-Wstrict-prototypes编译您的程序 - 您没有在调用的任何 .c 文件中使用sl_findNode()的原型(或声明)。