我有一个将两个矩阵 A 和 B 相乘然后打印结果的函数。以两种类似的方式运行程序时,我得到了两个不同的输出。
第一的:
FILE *f;
f = fopen("in.txt","r");
struct Mat* A = read_mat(f);
struct Mat* B = read_mat(f);
print_mat(mat_mul_1(A, B));
输出是精确的乘积
A * B
第二:
FILE *f;
f = fopen("in.txt","r");
print_mat(mat_mul_1(read_mat(f), read_mat(f)));
输出是精确的乘积
B * A
我想知道为什么争论被颠倒了?!
(因为 'mat_mul_1' 函数是一个黑盒子)