我将存储在我从文件读取的2D数组中的数据与包含数据的字符数组进行比较。它看起来像这样:
char file[10][20];
file[0] = "test";
char arry[20] = "test";
if (arry == file[0]) {
//do something
}
else {
// do something else
}
问题是//正在执行某些语句,我确保在将文件读入数组时没有新的行字符。谢谢你的帮助
答案 0 :(得分:1)
不要被file[0] = "test";
和char arry[20]="test";
首先将指向字符串文字的衰减指针分配给char[20]
对象,这是类型不匹配错误。
其次是char数组的声明,其中内容的初始化与字符串文字的初始化。这与上面显示的不同。
你可以快速strcpy(file[0],"text")
这样做。但是再次使用strcmp
和朋友来比较这两个字符串。
if(strcmp(file[0],arry) == 0){
...
}