C语言结构体怎么掌握
发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,这篇文章主要介绍了C语言结构体怎么掌握的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇C语言结构体怎么掌握文章都会有所收获,下面我们一起来看看吧。例子:#include /
千家信息网最后更新 2026年10月31日C语言结构体怎么掌握
这篇文章主要介绍了C语言结构体怎么掌握的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇C语言结构体怎么掌握文章都会有所收获,下面我们一起来看看吧。
例子:
#include//32位系统上,结构体在没指定对齐的时候,默认以四字节进行对齐 typedef struct __ST{ int id ; //4 char *name ; //4 float math ; //4}ST;int main(){ ST st ; //获取结构体的第一个元素的首地址 int *ptr_0 = (int *)(&st); printf("st: %p ptr: %p \n",&st,ptr_0); //对结构体第一个元素赋值 *ptr_0 = 100 ; printf("*ptr_0 = %d\n",*ptr_0); //获取结构体的第二个元素的首地址,因为第二个元素是一级指针,所以需要用一个二级指针来接 char **ptr_1 = (char **)((int)&st+4) ; printf("ptr_1:%p\n",ptr_1); //对结构体的第二个元素赋值 *ptr_1 = "hello world"; printf("ptr_1:%s\n",*ptr_1); //获取结构体的第三个元素的首地址,根据对齐原则偏移算出第三个元素的地址 float *ptr_2 = (float *)((int)&st+8) ; printf("ptr_2:%p \n",ptr_2); //对结构体的第三个元素进行赋值 *ptr_2 = 96.78 ; printf("ptr_2:%.2f \n",*ptr_2); //输出结构体中所有成员的值 printf("st.id = %d st.name = %s st.math = %.2f\n",st.id,st.name,st.math); return 0;}
这里的根据对齐原则算出来的偏移量其实其实不就是offsetof宏的原理吗?
#define offsetof(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER)
关于"C语言结构体怎么掌握"这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对"C语言结构体怎么掌握"知识都有一定的了解,大家如果还想学习更多知识,欢迎关注行业资讯频道。
结构
元素
语言
地址
三个
知识
内容
原则
指针
篇文章
偏移
价值
例子
原理
字节
就是
成员
操作简单
文章
时候
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
湖北九亚互联网络科技有限公司
互联网是第几次科技革命的成果
科技信息互联网
与互联网科技公司
互联网 科技
鑫亿盛互联网科技
深圳天众互联网科技公司
玖二柒互联网科技公司待遇
青岛中康互联网医疗科技有限公司
常德市电业局互联网科技部
华夏互联网科技业
如何创新互联网科技
互联网科技创新的路径
长沙互联网科技
科技互联网海报
互联网公司高科技产品
互联网科技企业商标注意事项
互联网科技机房
安徽零酒互联网科技有限公司
高科技和互联网的现代国家
互联网科技
深圳互联网络科技有限公司
奇酷互联网科技
互联网科技logo
长亮科技互联网金融
荆州市昕露互联网络科技有限公司
烟台灵鸽互联网科技有限公司
合肥互联网科技公司公章图片
陕西九四连强互联网科技有限公司
北京天晋互联网科技有限公司