1
#include <stdio.h>
#define MAX 9

void main (int argc, char *argv[]) {

  printBoard();

}

void printBoard(void) {
  int row,col;
  row=col=0;

  for(row;row<MAX;row++)   //row navigation
    for(col;col<MAX;col++){//column navigation
      printf("r:%d,c:%d",row,col);
    }/*End Column Nav*/

  printf("\n");
}

我不确定我在这里做错了什么 - 我得到的错误:

“警告:'printBoard' 的类型冲突 [默认启用] 注意:'printBoard' 的先前隐式声明在这里”

4

3 回答 3

3

尝试为上面添加一个函数原型,例如,printBoardmain()

void printBoard(void);

void main(...)
于 2014-03-06T00:13:03.190 回答
2

您在调用它后声明了函数。

#include <stdio.h>
#define MAX 9

void printBoard(void) {
  int row,col;
  row=col=0;

  for(row;row<MAX;row++)   //row navigation
    for(col;col<MAX;col++){//column navigation
      printf("r:%d,c:%d",row,col);
    }/*End Column Nav*/

  printf("\n");
}
void main (int argc, char *argv[]) {

  printBoard();

}

这应该工作得很好。

编辑:您应该在调用任何函数之前声明所有函数。
像 void printBoard(void);

于 2014-03-06T00:12:57.060 回答
1

您在声明方法之前调用它。

通过以下方式解决问题:

1)移动void printBoard(void)上述主要的定义或

2)在上面添加声明main。就这一行:void printBoard(void);

于 2014-03-06T00:13:26.737 回答