当前位置: 代码迷 >> C语言 >> 百年不亮指点的!
  详细解决方案

百年不亮指点的!

热度:106   发布时间:2007-11-14 20:52:42.0
百年不亮指点的!
百年不亮说:“a[2][3]中的a是int **,a[0]是int *,那为什么不能将蓝色字体中的语句改为“int **p=a”呢?
#include<stdio.h>
int BubbleUp(int **array,int length);
int main()
{
int a[2][3]={3,4,7,8,2,1};
int *ptr=a[0];
int i;
int **p=&ptr;
BubbleUp(ptr,6);
for(i=0;i<6;i++)
printf("%d\t",ptr[i]);
getchar();
return 0;

}

int BubbleUp(int **array,int length)
{
int i,j, temp;
for(i=0;i<length;i++)
for(j=0;j<length-i-1;j++)
if(array[j]>array[j+1])
{
temp=array[j+1];
array[j+1]=array[j];
array[j]=temp;
}

return 0;
}

搜索更多相关的解决方案: return  

----------------解决方案--------------------------------------------------------
**p是二级指针吧,只能对一级的吧.

----------------解决方案--------------------------------------------------------
a[2][3]中的a是int **,
----------------解决方案--------------------------------------------------------
哪里有蓝色?
int **p=&ptr;
你定义这个做什么呢,不明白你的意思啊
不过我要说ptr=a
那你说为什么不能等于了
你用等于&a试试
我也不知道对不对
呵呵


----------------解决方案--------------------------------------------------------
看清下程序呀
----------------解决方案--------------------------------------------------------
LZ光是上面的源代码都调式不过啊???
----------------解决方案--------------------------------------------------------
是吗?能通过呀,你用的是什么编译器?
----------------解决方案--------------------------------------------------------
VC++6.0~
----------------解决方案--------------------------------------------------------
这段有问题吧
[CODE]if(array[j]>array[j+1])
{
temp=array[j+1];
array[j+1]=array[j];
array[j]=temp;
}[/CODE]
array是二级指针呢,你怎么当一级的来用.
----------------解决方案--------------------------------------------------------
LS有理,我也看雾了~
----------------解决方案--------------------------------------------------------
  相关解决方案