【问题标题】:"expected expression before char" inside function函数内部的“char之前的预期表达式”
【发布时间】:2019-10-28 04:00:39
【问题描述】:

我创建了一个创建游戏板的函数,并希望在我的 main 上调用它。此外,它使用的变量是在 main (char board[3][3]) 之外定义的全局变量

我也尝试在 main 中定义 char board[3][3] 但错误不断出现,我不想将它用作函数的局部变量,因为我在其他函数中使用它(我在这部分代码中也省略了)以及

char board[3][3] = {'1','2','3','4','5','6','7','8','9'};

void Tablero(char board[3][3]) {

     for(int i = 0; i < 3; i++){

         for(int j = 0; j < 3; j++){

            if(j < 2){
                 printf("   %c   |",board[i][j]);
             }
            else{
                 printf("   %c",board[i][j]);
             }
         }
         if(i < 2){
                 printf("\n-----------------------\n");
         }
     }

  }

int main (){

     Tablero(char board[3][3]);
     return 0;

  }

出现的错误是

 tictactoe.c: In function 'main':
 tictactoe.c:203:10: error: expected expression before 'char'
 Tablero(char board[3][3]);

【问题讨论】:

  • 编译器说Tablero(char board[3][3]); 是荒谬的,因为它是。没什么好说的——在你的 C 编程书中学习函数。

标签: c function expression call declaration


【解决方案1】:

这是主要的

Tablero(char board[3][3]);

是一个不正确的函数声明,没有返回类型。

我认为你的意思是调用函数而不是声明

Tablero( board );

【讨论】:

    猜你喜欢
    • 2021-06-06
    • 2013-10-03
    • 1970-01-01
    • 1970-01-01
    • 2014-04-02
    • 2014-11-30
    • 2016-07-26
    • 1970-01-01
    • 2014-01-01
    相关资源
    最近更新 更多