我正在尝试从一个文件中读取两个矩阵并将它们相加。但是我做不到。有人能帮我吗?我的代码...
#include<stdio.h>
#include<stdlib.h>
int main(){
FILE *file;
int arrayA[7][7], arrayB[7][7], arrayC[7][7];
int i,j;
i = 0;
j = 0;
file = fopen("matrix.txt", "r+");
for ( i = 0; i < 8; i++) {
for ( j = 0; j < 8; j++)
fscanf(file, "%d ", &arrayA[i][j]);
}
for (i = 0; i < 8; i++) {
printf("\n");
for (j = 0; j < 8; j++) {
printf(" %d ", &arrayA[i][j]);
}
}
}
看来您打算读取8x8的矩阵,而不是7x7的矩阵,对吗?也许您应该考虑使用字段定界符,即将此2x2矩阵对int,这样您的程序就会知道:
1,2;
3,4;
1,2;
3,4;
[此外,我认为您的打印命令每次以4字节十进制表示形式打印最右边索引j的8字节地址,假设您的地址大小为8字节。尝试使用:
sizeof(char *)
确定您的地址大小。这会导致地址表示形式的溢出,这并不是您想要的,因为它似乎不是二进制的按位表示形式。