- 1、本文档被系统程序自动判定探测到侵权嫌疑,本站暂时做下架处理。
- 2、如果您确认为侵权,可联系本站左侧在线QQ客服请求删除。我们会保证在24小时内做出处理,应急电话:400-050-0827。
- 3、此文档由网友上传,因疑似侵权的原因,本站不提供该文档下载,只提供部分内容试读。如果您是出版社/作者,看到后可认领文档,您也可以联系本站进行批量认领。
查看更多
嵌入式CC言精华文章集锦
嵌入式 C/C++语言精华文章集锦
C/C+语言struct 深层探索 2
C++中 extern C含义深层探索7
C 语言高效编程的几招11
想成为嵌入式程序员应知道的 0x10 个基本问题 15
C 语言嵌入式系统编程修炼22
C 语言嵌入式系统编程修炼之一:背景篇22
C 语言嵌入式系统编程修炼之二:软件架构篇24
C 语言嵌入式系统编程修炼之三:内存操作30
C 语言嵌入式系统编程修炼之四:屏幕操作36
C 语言嵌入式系统编程修炼之五:键盘操作43
C 语言嵌入式系统编程修炼之六:性能优化46
C/C++语言 void及 void 指针深层探索 50
C/C++语言可变参数表深层探索 54
C/C++数组名与指针区别深层探索 60
C/C++程序员应聘常见面试题深入剖析(1) 62
C/C++程序员应聘常见面试题深入剖析(2) 67
一道著名外企面试题的抽丝剥茧 74
C/C++结构体的一个高级特性――指定成员的位数 78
C/C++中的近指令、远指针和巨指针 80
从两道经典试题谈 C/C++中联合体(union)的使用81
基于 ARM 的嵌入式 Linux 移植真实体验 83
基于 ARM 的嵌入式 Linux 移植真实体验(1)――基本概念 83
基于 ARM 的嵌入式 Linux 移植真实体验(2)――BootLoader 96
基于 ARM 的嵌入式 Linux 移植真实体验(3)――操作系统 111
基于 ARM 的嵌入式 Linux 移植真实体验(4)――设备驱动 120
基于 ARM 的嵌入式 Linux 移植真实体验(5)――应用实例 135
深入浅出 Linux 设备驱动编程 144
1.Linux 内核模块144
2.字符设备驱动程序 146
3.设备驱动中的并发控制 151
4.设备的阻塞与非阻塞操作 157
1
C/C+语言 struct 深层探索
出处:PConline 作者:宋宝华
1. struct 的巨大作用
面对一个人的大型C/C++程序时,只看其对struct的使用情况我们就可以对其编写者的编程经
验进行评估。因为一个大型的C/C++程序,势必要涉及一些(甚至大量)进行数据组合的结构体,这些结
构体可以将原本意义属于一个整体的数据组合在一起。从某种程度上来说,会不会用struct,怎样用
struct是区别一个开发人员是否具备丰富开发经历的标志。
在网络协议、通信控制、嵌入式系统的C/C++编程中,我们经常要传送的不是简单的字节流(char
型数组),而是多种数据组合起来的一个整体,其表现形式是一个结构体。
经验不足的开发人员往往将所有需要传送的内容依顺序保存在char型数组中,通过指针偏移的
方法传送网络报文等信息。这样做编程复杂,易出错,而且一旦控制方式及通信协议有所变化,程序
就要进行非常细致的修改。
一个有经验的开发者则灵活运用结构体,举一个例子,假设网络或控制协议中需要传送三种报
文,其格式分别为packetA、packetB、packetC:
struct structA
{
int a;
char b;
};
struct structB
{
char a;
short b;
};
struct structC
{
int a;
char b;
float c;
}
优秀的程序设计者这样设计传送的报文:
struct CommuPacket
{
2
int iPacketType; //报文类型标志
文档评论(0)