请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

结构体变量本身是指针变量吗?

#include <stdio.h>
#include <io_utils.h>



int main() {
  typedef struct {
    int visibility;
    int allow_notification;
    int refresh_rate;
    int region;
    int font_size;
  } Settings;
  Settings settings = {1, 2, 3, 4, 5};
  PRINT_INT(sizeof(Settings));
  PRINT_HEX(settings);
  fflush(stdout);
  return 0;
};

老师您好,问您一个问题。上面是我自己写的一段代码,我想把结构体变量”settings“打印出来,如上面的这行代码“PRINT_HEX(settings)”,我想问的是打印出的结果是什么?我该如何理解打印出来的结果?

正在回答

1回答

更新一下哈。之前直接按内存分布想了。

C 语言应该是把结构体变量当做结构体本身的首地址了,类似于数组变量的效果。

0 回复 有任何疑惑可以回复我~
  • 提问者 prosmail #1
    非常感谢!
    回复 有任何疑惑可以回复我~ 2021-01-20 18:34:19
  • 提问者 prosmail #2
    老师,我打出来的值像是一个地址。
    回复 有任何疑惑可以回复我~ 2021-01-20 18:44:31
  • bennyhuo 回复 提问者 prosmail #3
    看来 &settings 与 settings 跟函数名、数组名的效果一致,都当成地址了。
    回复 有任何疑惑可以回复我~ 2021-01-20 18:52:52
问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号