我想在C语言中对指向数组的指针进行排序,但是不移动索引位置。下面是我尝试做的事情的图片:
这是我的代码,但它不起作用,我不知道问题出在哪里。
#include <stdio.h>
#include <stdlib.h>
int main()
{
int niz[7] = { 4, 2, 5, 7, 6, 1, 3};
int j,i;
int *temp;
int *nizptr = niz;
int **niz2ptr = &nizptr;
for(i = 0; i < 7; i++)
{
for(j = 0; j < 7; j++)
{
if( niz[i] < niz[j] )
{
temp = *(niz2ptr + i);
*(niz2ptr+i) = *(niz2ptr + j);
*(niz2ptr+j) = temp;
}
}
}
for(i = 0; i < 7; i++)
{
printf("%d",*(*(niz2ptr + i)));
}
return 0;
}