c++中的问题 指针 和指针加引用
c++中的指针传递参数#includeusingnamespacestd;voidchosesort(int*&a,intn);intmain(){intn,i;cin>...
c++中的指针传递参数 #include using namespace std; void chosesort(int *& a,int n); int main() { int n,i; cin>>n; int *array=new int[n]; for (i=0;i { cin>>array[i]; } chosesort(array,n); for (i=0;i cout< return 0; } void chosesort(int *&a,int n) { int i,j; int temp; for (i=1;i { temp=a[i]; for (j=i-1;j>=0&&temp a[j+1]=a[j]; a[j+1]=temp; } } 和 c++中的指针传递参数 #include using namespace std; void chosesort(int * a,int n); int main() { int n,i; cin>>n; int *array=new int[n]; for (i=0;i { cin>>array[i]; } chosesort(array,n); for (i=0;i cout< return 0; } void chosesort(int *a,int n) { int i,j; int temp; for (i=1;i { temp=a[i]; for (j=i-1;j>=0&&temp a[j+1]=a[j]; a[j+1]=temp; } } 这两种传递有什么区别 ????
展开
展开全部
解释一下int
*const
和
const
int*的区别:
int
*const:
const修饰的是int*这个指针本身,所以是指针本身的值不能变,但是指针指向的值可以变
const
int*:
const修饰的是int*指针指向的值,指针本身可以变,但指针指向的值不能变
你可以把你的函数的定义和函数的调用的地方发出来,这样才好分析。
*const
和
const
int*的区别:
int
*const:
const修饰的是int*这个指针本身,所以是指针本身的值不能变,但是指针指向的值可以变
const
int*:
const修饰的是int*指针指向的值,指针本身可以变,但指针指向的值不能变
你可以把你的函数的定义和函数的调用的地方发出来,这样才好分析。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
值都会改变,
指针传递
传递的是指针,
指针地址传递
传递的是指针的地址。
首先明确:指针这个变量
里面记录的内容
是一个地址
所以你通过指针,间接的去修改指针指向的地址内的数据
和直接修改指针地址内记录对应的数据
从结果上讲是一样的
指针传递
传递的是指针,
指针地址传递
传递的是指针的地址。
首先明确:指针这个变量
里面记录的内容
是一个地址
所以你通过指针,间接的去修改指针指向的地址内的数据
和直接修改指针地址内记录对应的数据
从结果上讲是一样的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
*&a:将指针的地址传入。这样你可以更改指针存储的东西(更改地址
让原来的指针指向新的内容
函数退出后指针指向不变。)
*a:将指针存储的东西存入a指针,只能更改指针存储的地址所指向的内容。(函数退出后,即使你改了a存储的地址
原来的指针存储的地址是不会变的)
让原来的指针指向新的内容
函数退出后指针指向不变。)
*a:将指针存储的东西存入a指针,只能更改指针存储的地址所指向的内容。(函数退出后,即使你改了a存储的地址
原来的指针存储的地址是不会变的)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询