【发布时间】:2014-11-04 18:46:11
【问题描述】:
我有这个问题: 我有一个存储不同字符的矩阵。现在我必须将这些字符与另一个字符进行比较,但是在编译时,它说 strcmp 接收 char* 并且我有 char**。那么,我该如何施放呢? 这是我的代码:
对于矩阵:
for (i = 0; i < x; i++){
for (j = 0; j < y; j++){
if (!fscanf(fol, "%c", &mat[i][j])){
break;}
//printf("%c", mat[i][j]);
}
}
我有问题的部分:
for (x = 0; x < largo; x++){
for (y = 0; y < ancho; y++){
char *charcha;
strcpy (charcha, mat[x][y]);
//char *charcha = "%c", mat[x][y];
int algo = strcmp(charcha, "0");
if (algo == 0){
printf (" ");
}
else{
printf("%c", mat[x][y]);}
}
}
printf ("\n");
我尝试使用 strcpy,但也失败了:C
谢谢
【问题讨论】:
-
按原样 charcha 是传递给 strcpy 的未初始化指针。
-
if (algo == 0){-->if (mat[x][y] == '0'){
标签: c pointers casting char strcmp