我目前的代码存在一个小问题:
unsigned a[100][100];
void f(unsigned char l, unsigned char h, unsigned char n, unsigned char p[][4]){
int i,k,t,x,y,z,m,j;
char s;
for (i = 0;i<h;i++) {
a[i][0] = '|';
a[i][l + 1] = '|';
}
for (i = 0;i<l+2;i++) a[h][i] = '-';
for (i = 0;i<h;i++)
for (int j = 1;j<l+1;j++)
a[i][j] = '.';
for(i=0;i<n;i++){
//read each piece
for(j=0;j<4;j++)
cin>>p[i][j];
for(m=(int)p[i][0];m<5;m++)
for(j=3;j<5;j++)
a[j][m]=p[i][3];
}
}
它不会将无符号字符p [i] [0]转换为m。
中的int答案 0 :(得分:0)
更好地使用static_cast
,如下所示:
m = static_cast<int>(p[i][0]);
也可以尝试如下: -
m = (p[i][0]) - '0';