关于“结构体变量名代表什么”的理解

本文探讨了C语言中结构体变量的声明和内存分配。通过示例展示了`typedef struct`定义的st类型,说明了结构体变量如st1在内存中的布局,以及如何通过指针访问结构体成员。程序中通过输出结构体变量的值,解释了如何正确读取内存区域的内容,包括字符m和整数n,并讨论了指针偏移在访问结构体元素中的应用。
摘要由CSDN通过智能技术生成
 刚看了下,网上关于结构体变量名的文章,现做一些总结。理解可能还会有错误,有待以后更正。

    结构体变量代表的是一块内存区域。
            

  1. typedef struct
  2. {
  3.     char m;
  4.     int  n;
  5.     
  6. } st;

  7. void main()
  8. {
  9.     st st1;   
  10. /*声明一个变量,则代表申请了一片内存区域。从程序员的角度这块内存区域就可以用st1来表示.而内存区域的大小是由类型决定的。这里为4(char m)+4(int n)个字节(按理说m为char类型应该1个字节,为什么分配了4个字节的空间,好像与编译器根机器字节有关,这个问题还需要进一步搞明白)*/
  11. 这样,这片内存区域就可以表示为:
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值