如何解释这个函数定义?我该如何向它传递参数?
void matmul(float (*A)[N],int BlockX, int BlockY)
最佳答案
第一个参数是指向N
元素数组的指针:
float a[N];
matmul(&a, 2, 3);
(注意,
N
必须是C89和C++中的编译时常数;在C89中,它本质上必须是#define
d作为一些文字值。在C99中有可变长度的数组。)由于数组会衰减为指针,因此也可以为其提供数组:
float b[M][N];
matmul(b, 2, 3);
关于c - 无法理解此功能定义,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8273860/