繁体   English   中英

qsort:在C中对3D数组的1维进行排序

[英]qsort: Sort 1 Dimension of 3D array in C

我有一个3D数组:float input[2][50][1000];

我想从以下快速排序:

qsort (x, sizeof(x)/sizeof(*x), sizeof(*x), comp);

comp在哪里

int comp (const void * elem1, const void * elem2) {
    float f = *((float*)elem1);
    float s = *((float*)elem2);
    if (f > s) return  1;
    if (f < s) return -1;
    return 0;
}

我只想对3D数组的1维进行排序,即我想对input[0][temp][0]input[0][temp][1]input[0][temp][2]和以此类推。

问题:我用x替换什么? 原谅我听起来很愚蠢

float (*x)[1000] = &input[0][temp];
qsort (x, sizeof(*x)/sizeof(**x), sizeof(**x), comp);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM