9个回答
展开全部
int&a的时候,编译器不会给a分配内存空间,因为它只是另一个变量的标记;
&a是存放a的内存地址,比如变量a=1,&a就等于存放这个1的内存地址的数值;
例:
#include<stdio.h>
intmain()
{
inta[2]={1,2};
intb=5;
int*p1=a;
int*p2=&a;
printf("b:%d&b:%d\n",b,&b);
printf("a[]:%d&a[]:%d\n",*p1,*p2);
getch();
return0;
}
扩展资料
int&b=i;//这里b是一个引用,它是变量i的引用引用就是指针,对比如下程序:
voidfunction(int*a)
{
*a=100;
}intmain(){
intx=200;
int*b=&x;
function(b);
return(0);
}
voidfunction(int&a)
{
a=100;
}intmain(){
intx=200;
function(x);
return(0);
}
int&a应该也是voidfunction(int&a)传递参数
展开全部
在定义一个变量的时候,*表示指针
比如int * a,表示a是一个指向int的指针
int **a相当于(int *) * a,表示a是一个指向int *的指针(通俗点说就是a的值是一个指针,或者说地址),即指向int指针的指针,这是2级指针。
int m = 1;
int *p = &m;
int ** a = &p;
比如int * a,表示a是一个指向int的指针
int **a相当于(int *) * a,表示a是一个指向int *的指针(通俗点说就是a的值是一个指针,或者说地址),即指向int指针的指针,这是2级指针。
int m = 1;
int *p = &m;
int ** a = &p;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
当int* a和int* b后面都有分号时,int* a;是声明或说明指向int型变量的指针a,int* b;是声明或说明指向int型变量的指针b。题面中二者后面都没有分号,应该说都是错误语句。行话这样表述:int* a;是声明int*型指针a,int* b;是声明int*型指针b。当然要明白,指针的类型是指它指向的目标的类型。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-07-25
展开全部
int*是指向int的指针
char*是指向char的指针
*a是对指针a解引用
char* p;是声明一个char*类型的指针
*p = &c;把c的地址赋给p指向存储的内存
int b = 3;
int* a = &b; // 取b的地址并赋给指针a
*a = 4; // 修改a所指向地址的内存内容为4,因为a指向b,所以这句执行之后b = 4
char*是指向char的指针
*a是对指针a解引用
char* p;是声明一个char*类型的指针
*p = &c;把c的地址赋给p指向存储的内存
int b = 3;
int* a = &b; // 取b的地址并赋给指针a
*a = 4; // 修改a所指向地址的内存内容为4,因为a指向b,所以这句执行之后b = 4
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐于2017-05-24
展开全部
nt &b = i;//这里b是一个引用,它是变量i的引用
引用就是指针,两者没有区别。我们可以把引用想象成一个不需要"*"就可以访问变量的指针,对比如下程序:void function(int *a){
*a = 100;
}int main(){
int x=200;int *b = &x;function(b);return(0);
} void function(int &a){
a = 100;
}int main(){
int x = 200;function(x);return(0);
}以上两段程序完成的功能是一样的。
你那个 int &a
应该也是void function(int &a)这种形式的把,传递参数的
引用就是指针,两者没有区别。我们可以把引用想象成一个不需要"*"就可以访问变量的指针,对比如下程序:void function(int *a){
*a = 100;
}int main(){
int x=200;int *b = &x;function(b);return(0);
} void function(int &a){
a = 100;
}int main(){
int x = 200;function(x);return(0);
}以上两段程序完成的功能是一样的。
你那个 int &a
应该也是void function(int &a)这种形式的把,传递参数的
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |