77问答网
所有问题
C语言中 取内容与取地址运算符的问题
* & a = * (& a) =* p1 = a即 *&互相抵消 &*无意义问题是 怎么就互相抵消了,怎么就无意义了p1是指针变量
举报该问题
推荐答案 2013-02-02
我明白你什么意思,指针的概念确实不好理解!
1,先给你说下指针,你把指针理解了运算符的抵消就明白一半了!
指针里面是保存的内存地址(就像int变量里面保存的是整型变量一个意思)。
整型变量保存在内存里面,我可以通过这个变量名称来调用这个数据,也可以通过指针里面这个变量的地址加上*(间接访问运算符),来调用这个数据。
2,再说下运算符*和&
*是间接访问运算符:就是可以通过地址,找到这个地址里面的变量,所以 *p1 就等同于变量a
&是求地址运算符:就是将变量所在的内存地址,提取出来
这两个运算符的运算等级是相同的,也就是说谁距离变量近,就谁先。所以*&a和*(&a)是一样的,都是先取地址,在对地址进行间接访问。但是一定要注意*与&的顺序,&*a是无效的。
3,再说下题
*运算符就是对地址进行操作的,那么 *地址 的意思就是访问地址里面的数据,而&a就是取变量a的地址,所以*&a: 先取变量a的地址 再 对地址进行间接访问,两个操作就相互抵消了,最后还是变量a。
4,还有什么不明白的么?
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://77.wendadaohang.com/zd/GYpq833Ip.html
其他回答
第1个回答 2009-12-14
* 的优先级大于&,所以取值必须在& a加括号,不然会无意义
第2个回答 2012-11-08
详细点儿,看不懂你什么意思...
把规范的写出来...
如果是这样,这个赋值确实没什么意义...
本回答被网友采纳
相似回答
c语言问题
答:
取内容
运算符
取地址运算符
& 是单目运算符,其结合性为自右至左,用来表示指针变量所指的变量。在*运算符之后跟的变量必须是指针变量。需要注意的是指针运算符*和指针变量说明中的指针说明符* 不是一回事。在指针变量说明中,“*”是类型说明符,表示其后的变量是指针类型。而表达式中出现的“*”则是...
C语言的
指针中,*p=&a和*p=a哪个对?为什么呢?总是搞不明白,指针这一块在...
答:
先搞清楚这些
运算符的
含义。
取内容
运算符,要求的操作对象需要是指针类型,返回结果是非指针类型 &
取地址运算符
,要求的操作对象是非指针类型,返回结果是指针类型 = 赋值运算符,要求赋值运算符两边的类型应该相同 然后再来看,p是int *类型,那么*p就是int类型,&p就是int **类型 a是int类型...
C语言中取内容运算
答:
理由是 *m 的类型是 int (声明语句对称性)。再回顾指针的本质,它是一个变量,记录了另一个变量
的地址
。所以我们找到一个int 变量a,获取它的地址&a。那么 &a 的类型就是int *。m = &a;的含义是,把a的地址赋给指针m。至于为什么一定要把a的地址赋给m而不是随便什么值?我的答案是:随...
关于
c语言中的取内容运算符
*
答:
既然你知道ip的值是变量p在内存中的
地址
,那么你就应该知道*ip就是p的值啊。还有,记住,只有在定义时才可以写 int a , *ipa=&a ;只有这时这种写法才是合法的。要是直接*ipa=&a ;的话,编译器会报错。
取内容运算符的问题
答:
去内容运算符是
取地址运算符
是& 具有取某个地址指向内存空间中的内容作用的运算符就叫做
取内容
运算符
C语言
关于
取地址符问题
答:
数组的名字就是代表数组的第一个字
符的
首
地址
,所以说你上面也可以不用printf("&manager.id=%x\n",&manager.id);这样;如果改成下面这个语句,得到的答案也是一样的:printf("&manager.id=%x\n",manager.id);
&在
c语言中
表示什么
运算
?
答:
&在
C语言中
表示两种不同的运算符。1. 当&只有一个运算对象时,并且该对象是右操作数,它作为
取地址运算符
使用。此时,&的结果是操作对象的地址。例如,&a(假设a是一个具有具体可访问地址的左值)将返回a的地址。2. 当&有两个运算对象时,它表示位与运算符。位与运算的结果是两个运算数相应位上...
大家正在搜
c语言算术运算符
c语言位运算符的用法
c语言逻辑运算符例题
c语言单目运算符
c语言条件运算符
c语言运算符大全
c语言34种运算符
c语言逗号运算符
c语言括号运算符
相关问题
C语言中 取内容与取地址运算符的问题
初学C语言,*是取指针目标运算符,&是取地址运算符,它们有什...
为什么C语言Scanf函数对字符串不要加 取地址运算符&
关于c语言中的取内容运算符*
&怎么读 c语言的取地址运算符。就是7那个键的那个符号。
c语言中取内容运算符为
C语言里取地址符和按位与操作符都是&,那用的时候怎么区分?
如果在字符数组名前加上取地址操作符&,会发生什么?(c语言)