c语言中使用指向结构指针的原因是什么
发表于:2025-11-13 作者:千家信息网编辑
千家信息网最后更新 2025年11月13日,本篇内容主要讲解"c语言中使用指向结构指针的原因是什么",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"c语言中使用指向结构指针的原因是什么"吧!1、指向结构
千家信息网最后更新 2025年11月13日c语言中使用指向结构指针的原因是什么
本篇内容主要讲解"c语言中使用指向结构指针的原因是什么",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"c语言中使用指向结构指针的原因是什么"吧!
1、指向结构的指针通常比结构本身更容易控制。
2、早期结构不能作为参数传递给函数,但可以传递指向结构的指针。
3、即使可以传递结构,传递指针通常也更有效率。
4、一些用于表示数据的结构包含指向其他结构的指针。
实例
#include#define LEN 20 struct names //定义结构体names{ char first[LEN]; char last[LEN];}; struct guy //定义结构体guy{ struct names handle; char favfood[LEN]; char job[LEN]; float income;}; int main(void){ struct guy fellow[2] = { //这是一个结构嵌套,guy结构里嵌套了names结构 //初始化结构数组fellow,每个元素都是一个结构变量 {{"Ewen","Villard"}, "girlled salmon", "personality coach", 68112.00 }, {{"Rodney","Swillbelly"}, "tripe", "tabloid editor", 432400.00 } }; struct guy * him; //这是一个指向结构的指针 printf("address #1:%p #2:%p\n",&fellow[0],&fellow[1]); him = &fellow[0]; //告诉编译器该指针指向何处 printf("pointer #1:%p #2:%p\n",him,him+1);//两个地址 printf("him->income is $%.2f:(*him).income is $%.2f\n",him->income,(*him).income);//68112.00 //指向下一个结构,him加1相当于him指向的地址加84。names结构占40个字节,favfood占20字节,handle占20字节,float占4个字节,所以地址会加84 him++; printf("him->favfood is %s: him->handle.last is %s\n",him->favfood,him->handle.last); //因为有了上面的him++,所以指向的是favfood1[1], return 0;} 输出结果为PS D:\Code\C\结构> cd "d:\Code\C\结构\" ; if ($?) { gcc structDemo02.c -o structDemo02 } ; if ($?) { .\structDemo02 }address #1:000000000061FD70 #2:000000000061FDC4pointer #1:000000000061FD70 #2:000000000061FDC4him->income is $68112.00:(*him).income is $68112.00him->favfood is tripe: him->handle.last is Swillbelly
到此,相信大家对"c语言中使用指向结构指针的原因是什么"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
结构
指向
指针
字节
原因
语言
地址
内容
这是
学习
实用
更深
有效
两个
元素
兴趣
函数
参数
变量
实例
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
十三月连接服务器失败
网络安全看北京
谈谈对数据库的安全
查看samba服务器ip地址
科技互联网有限公司经营范围
微信小程序和网站共用服务器
web数据库与系统连接
当前我国网络安全问题
动车组网络技术试卷
pg数据库随机数
vivox语音服务器
c 软件开发关键技术
龙之谷服务器断开连接
软件开发脚本怎么写
软件开发介绍视频场景
设计表格自动的数据库
怎么查看数据库列的字段类型
天水市软件开发
公安部网络安全大检查
阿里云服务器显示hd是怎么回事
jbpm使用达梦数据库
所有软件开发的第一步是什么
饥荒服务器慢
访问web服务器上的图片
上海服务器机柜尺寸
服务器解决方案
在数据库中怎么合并表
服务器获取时间失败
smtp服务器端口
软件开发哪个容易上手