欢迎来到飞鸟慕鱼博客,开始您的技术之旅!
当前位置: 首页知识笔记正文

结构体类型的变量不能使用 & 进行取地址的操作。

终极管理员 知识笔记 94阅读

结构体类型的变量名可以直接当作地址使用吗?

答:结构体类型的变量名并不能直接当作地址使用,这一点和基本数据类型相同。 (修改版) int i;,在这一句就为i分配了内存 (但尚未对这块内存进行初始化),所以可以通过&i直接使用这块内存。

结构体对象如何获取成员变量地址?

答:1.通过结构体对象.的方式获取成员变量地址和通过结构体指针->获取成员变量地址的方式获取到的地址是一样的,即两种方式获取无差别. 2.结构体对象a作为实参传递到函数中由b接收,但可以看出其内存地址是不相同的,这也就跟值传递的机制有关.

数据类型的变量和地址的对应关系是什么?

答:基本数据类型的变量,和地址的对应关系需要取址符&才能得到地址,而其余的这些,名字本身就对应着地址。 例如char *pc = “se”;,就是将字符串常量”se”的首地址 (位于静态存储区)赋值给了字符指针pc。

结构体对象a和n指针返回的成员变量地址有什么区别?

答:2.结构体对象a作为实参传递到函数中由b接收,但可以看出其内存地址是不相同的,这也就跟值传递的机制有关. 3.n作为指针返回的成员变量地址是基于复刻后的结构体变量b存在的,n和a [2]的地址是不同的.这也就导致最后对n指针的值修改,不影响其a结构体成员变量值.

声明:无特别说明,转载请标明本文来源!