• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

结构体变量取与和结构体名字不一样吗

huihui163 2019-03-02 浏览量:1047

比如结构体变量a,那么&a是代表a中第一个成员的地址吗,变量名字a也可以代表地址吗


还有一个问题,结构体指针变量 *a    这个a和&a是啥区别

0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • &a 是结构体  a 的取址操作,地址指向 a,因为结构体 a 的首地址,和结构体 a 中首个变量的地址一样,所以&a 等于 a中第一个成员的地址,也等于 a 的首地址,

    变量名a不代表地址


    *a 的 a 是个指针,程序不会自动为 a 结构体分配空间,只存在一个指针变量

    &a 是 变量a 的取址操作。

    • 发布于 2019-03-02
    • 举报
    • 评论 0
    • 1
    • 0

其他答案 数量:8
  • 结构体在声明的时候,就分配了空间。结构体和数组不同,结构体类型的变量名并不能直接当作地址使用,这一点和基本数据类型相同。需要对结构体名使用取址符&才能进行地址操作,并且取址所得到地址代表的是指向结构体的指针,只是在数据上和结构体中的首元素地址相同。
    • 发布于2019-03-02
    • 举报
    • 评论 1
    • 2
    • 0
huihui163 回复了 wo4fisher :对了,变量名字代表的是数据,OK, 回复

  • &a是结构体变量指针,a就是结构体变量
    • 发布于2019-03-02
    • 举报
    • 评论 0
    • 1
    • 0

  • &a就是取a起始的地址,*a是取那个地址处一个变量的值
    • 发布于2019-03-02
    • 举报
    • 评论 0
    • 1
    • 0

  • 是的,就是结构体的第一个的地址的,

    指针只是个地址,没有实际的数据,而&a是有实际的数据 的

    • 发布于2019-03-04
    • 举报
    • 评论 0
    • 0
    • 0

  • &a是取地址操作;*a,a是个指针变量
    • 发布于2019-03-17
    • 举报
    • 评论 0
    • 0
    • 0

  • 基本的指针知识。&表示取址,*a中a表示指针

    • 发布于2019-03-27
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

结构体变量取与和结构体名字不一样吗