不兼容的隐式函数声明:但是函数在这之上声明了吗?

时间:2014-09-23 01:52:05

标签: c struct compiler-errors declaration

我接收到错误说"''不兼容的隐式声明函数'getNextWord'"。 getNextWord的类型为word_t,如下面结构中所定义:

typedef struct word_t {
  int startIndex;
  int stopIndex;
  char buf[MAX_LINELEN];
} word_t;

函数getNextWord开头如下:

word_t 
getNextWord(char * buf, int sz, int offset) {

word_t word;
/* more code in here */

return word
}

有问题的街区是:

void
stage2(line_t * linePtr) {

    int offset = 0;
    word_t word;

    do {
        word_t getNextWord();
        word = getNextWord(linePtr->buf, linePtr->lineLength, offset);
/* more code here */
}

使用上面的块我得到了赋值行中的错误(word = ...),即使我已在上面的行上声明了该函数。我也得到警告:"隐含声明函数'getNextWord'"在同一条线上。

为什么会这样/我该如何解决这个问题?

谢谢

0 个答案:

没有答案