C语言中结构体变量之间赋值
2024-08-29 04:09:57
近期,我阅读了某新员工小刘写的C语言代码,发现其对结构体变量之间的赋值不是非常熟悉。
对于两个同样类型的结构体变量,他均採用的是逐个成员变量直接赋值的形式。例如以下的代码演示样例:
如上代码所看到的,tEmployeeInfoSrc和tEmployeeInfoDest是两个类型同样的结构体变量,tEmployeeInfoSrc(源结构体变量)中的各个成员变量已赋初值。现要使tEmployeeInfoDest(目的结构体变量)中的各个成员变量的值与tEmployeeInfoSrc中相应成员变量的值同样。小刘採用的方式是各个成员变量一一赋值。这尽管能够确保赋值操作的正确性,但并非最优的方法。
针对以上代码,我们能够稍加改动。例如以下所看到的:
如上代码所看到的,我们能够直接将源结构体变量的值赋给目的结构体。将原来的三行代码缩减为一行。当一个结构体的成员变量较多时,各个变量逐一赋值显然过于繁琐。即採用直接赋值的方法更加简洁直观。
两个同样类型的结构体变量相互赋值的情况还有好多种,例如以下代码所看到的:
指针和结构体是C语言的精华和难点所在,大家一定要在实战中学会它们的用法。
(本人微博:http://weibo.com/zhouzxi?topnav=1&wvr=5。微信号:245924426,欢迎关注!
)
最新文章
- Service Discovery with Apache Curator
- linux下的openoffice安装和服务自启动
- Python Tutorial 学习(三)--An Informal Introduction to Python
- 九度OJ 1552座位问题(dp)
- Swift 流程控制
- java设计模式--结构型模式--桥接模式
- ubuntu 14.04 安装matlab2015b(破解版),具体软件请访问我的网盘~
- 利用matlab进行协方差运算
- Markdown的简单用法
- Windows搭建wnmp
- OpenCV二维Mat数组(二级指针)在CUDA中的使用
- appium在android 7.0真机上运行报错command failed shell:............ps:'uiautomator";的解决方式
- equals方法中变量在前和在后的区别
- Ocelot简易教程(三)之主要特性及路由详解
- Linux命令——用户和用户组管理
- lucene中文分词——(四)
- Java类中代码的执行顺序 静态代码块>;构造代码块>;构造方法
- C语言函数实现的另类方法
- php中对象(object)与数组(array)之间的相互转换
- Django框架(二) MTV模型简介
热门文章
- WPF动画 - Loading加载动画
- CAD绘制固定圆形标注(网页版)
- IDEA常见问题
- (error) MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist on d
- js 技巧 (八)JS代码判断集锦(之二)
- 搭建Samba共享服务器
- 树莓派 -- 输入设备驱动 (key) 续2: 转载 Setting up a GPIO-Button “keyboard” on a Raspberry Pi
- MyBatis 多参问题
- 在linux服务器上搭建Struts2项目运行环境
- JDK的安装和环境变量配置