使用函数参数重塑动态数组

时间:2013-04-11 20:05:09

标签: c++ openacc

今天我发现这是一家公司给我的示例文件:

void mySgemm( int m, int n, int k, float alpha, float beta, float a[m][n],   float b[n][k], float c[m][k], int accelerate )

跟:

a_cpu = malloc(..);
b_cpu = malloc(..);
c_cpu = malloc(..);
mySgemm(m, n, k, a, b, a_cpu, b_cpu, c_cpu, true);

我无法编译自己的类似示例,坦率地说,我从未见过有人使用动态数组并使用函数参数本身对其进行整形。

这是合法的电话吗?


令我难以置信的是,mySgemm函数在a函数中访问bc,{{1}}为双数组,因此数组基本上正在重新形成!?< / p>

1 个答案:

答案 0 :(得分:1)

不,它无效c ++。

我想正式的参数声明会在c99中作为可变数组传递,但我不确定那些参数的实际参数会被接受