调用函数时,为什么会出现这些错误?

问题描述 投票:0回答:1

我收到这些警告,我相信这些警告会阻止任何内容的打印:当我调用函数和“预期的char(*)[26]但参数为'char'类型”时,“传递'printboard'的参数1使指针从整数而不进行强制转换”在第2行上。

#include <stdio.h>
void printBoard(char board[26][26], int n){
int i,j,k;

if (i=0){
        for (j=1;j<n;j++){
        for (k=1;k<n;k++){
            board[i][j]=k;
        }
        printf("%c", k+96);
    }
}

if (j=0){
for(i=1;i<n;i++){
    for(k=1;k<n;j++){
        board[i][j]=k;
        printf("%c", k+96);
    }
}    
}

for (i=1;i<=n;i++){
    for (j=1;j<=n;j++){
        if (board[i][j]!=board[n/2][n/2]&&board[i][j]!=board[(n/2)+1][(n/2)+1]&&board[i][j]!=board[n/2][(n/2)+1]&&board[i][j]!=board[(n/2)+1][n/2]){
            board[i][j]='U';
        }
        else if (board[i][j]==board[n/2][n/2]&&board[i][j]==board[(n/2)+1][(n/2)+1]){
            board[i][j]='W';
        }
        else {
            board[i][j]='B';
        }
    }
    printf("%c", board[i][j]);
}
//n is even
return;
}


int main(void)
{
const char board[26][26];
int dim;
char boardConfig;
printf("Enter the board dimension: \n");
scanf("%d", &dim);   

printBoard(board[26][26],dim);
c
1个回答
0
投票

board[26][26]char元素(超出范围)。您想通过整个董事会:

printBoard(board,dim);
© www.soinside.com 2019 - 2024. All rights reserved.