发布网友 发布时间:2024-09-28 17:48
共0个回答
p=&a,意思是把a是地址给p,这个p定义的时候是一个指针变量,*p=a,也是这个意思,比如a=2,那么*p就是等于2,p是存放2这个值的空间的地址,可以等效。
C语言中,p=&a 那么*p与a的区别是什么?p按照Stanley Lippman的著作《C++ Primer》中的描述,p是指针变量,*是解引用操作符,*p是一个表达式,含义是“对指针变量p进行解引用操作”,这与表达式&a的含义“取整形变量a的地址”是正好是相反的操作。
C语言中,p=&a和*p=&a有什么区别p=&a;是将a的地址赋值给*p,结果会是一个十六进制的数。第二个是让p指向a的地址空间。*p的傎和a相等。int a=2,*p;p=&a;打印*P应该是一个地址值,很长一串,p=&a;打*P印结果会是2;
*p=&a,*p=a和p=&a各是什么意思,有什么区别?2.*p=a的意思:将a的值赋给p指针指向的地址的值;3.p=&a的意思是:将a的地址赋给指针p;4.区别:*p是一个值;p是一个地址;两者完全不相同。5.*代表着p指向的地址的值,简单来说就是取值;&是取地址符号,取的是地址;p是指针,可以理解为所指向的值的地址,*p就是取p指针指向的地址的...
C语言指针,int a=1; int *p; 其中p=&a和*p=&a有什么区别?p的值是否相 ...q=&a;r=&a;printf("p=%d,q=%d,r=%d",p,q,r);getch();} int *p=&a ; 这是很标准的,把a的地址个p指针变量。int *q;q=&a;这也是很标准的。定义一个指针变量,然后将a的地址赋值给她。int *r; *r=&a; 首先r是个指针变量,但是r指向内存中那个单元格呢?r没有赋初值就开始...
...p=&a; int *p=&a;这里面的*p不是表示值吗?值可以等于地址&a?_百度...定义变量时,星号属于类型说明的一部分;赋值时,星号表示对指针所指地址中的值操作(读写)。而int *p=&a;你都知道了是相当于定义并赋值的简化形式,不应该与单独的 *p=a混淆,等效如下代码:int *p;p=&a;就是将两行代码合并,并省略了重复的 p。
c语言中*p=a是什么意思?我不讨论它们的区别,因为*p=&a这个形式一般是错的,常用的是p=&a。下面比较*p=a和p=&a。看图,图很详细。显然它们是等价的。然后比较*p=&a和p=&a;则这两种都是对指针变量的赋值,赋值有两种形式 ①先定义后赋值 int a=3,*p;(定义指针变量*p)p=&a;(对指针变量取地址)②定义变量的同时...
c语言多极指针里面的这个*p==*a是为什么? 为什么不是*p==a, **p==*achar**p;说明了p的类型,p=a;是将a赋值给p,二者相同。因此有以上的执行结果。int *p.这是一个指针变量,它就是一个只能用来装地址的变量。p++就等于p+1啊,他们都是指向一个位置的,如在vc下,一个整形数据占4字节,p=2000(地址,二进制的,这样写方便你懂),*p++是说用后p指向的地址...
在c语言中,int *p,a; *p=&a,和p=&a有什么区别?= 0x%X\n",&p,*p,p);printf("a的地址 = 0x%X \na的值 = 0x%X\n",&a,a);p=&a;//把指针p自己的值 改变为 变量a的地址,同时指针p指向变量a的值了printf("\n执行 p=&a; 指令后的值\n");printf("p的地址 = 0x%X \n指针p指向的值 = 0x%X \n指针p自己的值 = 0x%X\n"...
c语言中,定义int型变量a指针*p,那么,*p=&a和p=&a是什么区别?定义int类型变量a和指针*p,则指针p存的是一个int型变量的地址,即可以表达为:p = &a;p存的是int型变量的指,即p指针指向地址的内容,所以可*p = a; 当你用*p = &a时,编译器会认为指针的值表示了地址,编译报错。如果你真想这样表示,也可以,只需要将地址强转为int型,即 p = (int)...