[求助]关于指向指针的指针
哪里错了呀?#include <stdio.h>
#include <stdlib.h>
int main(void)
{
void sort(int **,int);
int a[20],i,n;
int *p,**pa;
printf("输入数据的长度:");
scanf("%d",&n);
for(i=0;i<n;i++)
scanf("%d",p+i);
pa=p;
sort(pa,n);
printf("排序后:\n");
for(i=0;i<n;i++)
printf("%d",**(pa+i));
system("pause");
}
void sort(int **p,int n)
{
int i,j,t;
for(i=0;i<n;i++)
for(j=i+1;j<n;j++)
if(**(p+i)>**(p+j))
{
t=**(p+i);
**(p+i)=**(p+j);
**(p+j)=t;
}
}
搜索更多相关的解决方案:
指针
----------------解决方案--------------------------------------------------------
已解决。
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
void sort(int **,int);
int a[20],i,n;
int *p[20],**pa;
printf("输入数据的长度:");
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%d",a+i);
p[i]=a+i;
}
pa=p;
sort(pa,n);
printf("排序后:\n");
for(i=0;i<n;i++)
printf("%d",**(pa+i));
system("pause");
}
void sort(int **p,int n)
{
int i,j,t;
for(i=0;i<n;i++)
for(j=i+1;j<n;j++)
if(**(p+i)>**(p+j))
{
t=**(p+i);
**(p+i)=**(p+j);
**(p+j)=t;
}
}
----------------解决方案--------------------------------------------------------
是不是运用指向指针的指针都得有一个数组指针呀?
----------------解决方案--------------------------------------------------------