头发 发表于 2020-12-4 15:58:10

指针数组为啥没输出

#include<stdio.h>
#define N 3
void sort(int *p[])
{
        int i,j,t;
        for(i=0;i<N;i++)
        {
                for(j=0;j<N;j++)
                {
                        if(*p>*p)
                        {
                                t=*p;
                                *p=*p;
                                *p=t;       
                        }
                }
        }
        for(i=0;i<N;i++)
        {
                printf("%d",*p);
        }
}
int main()
{
        int a={2,1,3};
        int *p,i;
        for(i=0;i<N;i++)
        {
                p=(a+i);
        }
        sort(p);
        return 0;
}
没有报错 运行无结果,求大佬解答

阳光@boy 发表于 2020-12-4 16:40:30

kankan

北冰羊 发表于 2020-12-4 17:16:23

这个调用应该是调用二维数组的方式把,正常数组不需要指针数组,还有那个函数功能应该是排序把,写的应该是有些问题
#include<stdio.h>
#define N 3
void sort(int p[])
{
      int i,j,t;
      for(i=0;i<N;i++)
      {
                for(j=0;j<N-i-1;j++)
                {
                        if(p>p)
                        {
                              t=p;
                              p=p;
                              p=t;      
                        }
                }
      }
      for(i=0;i<N;i++)
      {
                printf("%d",p);
      }
}
int main()
{
      int a={2,1,3};
      int p,i;
      for(i=0;i<N;i++)
      {
                p=a;
      }
      sort(p);
      return 0;
}
页: [1]
查看完整版本: 指针数组为啥没输出