我正在使用cblas_icamax
. 我想将一个浮点向量传递z13]
给 cblas_icamax(见下文)。我的代码包括以下内容。
float z[13] = {0.f, 0.f, 0.f, 0.f, 0.f, 0.f, 0.f, 0.f ,0.f, 0.f, 0.f, 0.f, 0.f};
//...
for (i = 0; i < 13; i++) {
printf("%.4f\n", z[i]);
}
int cardIndex = cblas_icamax(13,(float*) z,1);
NSLog(@"cardIndex: %d", cardIndex);
我也尝试了这段代码,结果相同。
int cardIndex = cblas_icamax(13,&z,1);
打印结果如下,最大绝对值为 138.1086,即位置 10,但函数cblas_icamax
返回 5。出了什么问题?
-1.2624
74.1524
52.3533
89.9426
28.8639
-7.6203
-30.2820
48.9747
124.8693
29.4351
138.1086
36.2638
-45.0410
返回向量中绝对值最大的元素的索引(单精度复数)。
int cblas_icamax (
const int N,
const void *X,
const int incX
);