首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列关于C语言中结构类型的叙述中,错误的是_____________。
下列关于C语言中结构类型的叙述中,错误的是_____________。
admin
2018-11-21
48
问题
下列关于C语言中结构类型的叙述中,错误的是_____________。
选项
A、结构第一个成员的地址和整个结构的地址相同
B、缺省条件下,编译器为每个成员按自然对齐(alignment)条件分配空间
C、结构成员按照它们被声明的顺序在内存中顺序存储
D、结构是一种复合数据类型,其构成元素只能是基本数据类型
答案
D
解析
本题考查C语言数据结构方面的基础知识。
在C语言中,结构体(struct)是C语言中聚合数据类型的一类。结构体可以被声明为变量、指针或数组等,用以实现较复杂的数据结构。结构体同时也是一些元素的集合,这些元素称为结构体的成员,且这些成员可以为不同的类型,成员一般用名字访问。
结构体的成员可以包含其他结构体,也可以包含指向自己结构体类型的指针,而通常这种指针的应用是为了实现一些更高级的数据结构如链表和树等。
在实际项目中,结构体是大量存在的。程序员常使用结构体来封装一些属性来组成新的类型。由于C语言内部类型比较简单,程序员通常使用结构体创造新的“属性”,其目的是简化运算。结构体在函数中的主要作用就是封装。封装的好处就是可以再次利用。
结构体的大小不是结构体元素单纯相加就行的,因为主流计算机使用32bit字长的CPU,对这类型的CPU取4个字节的数要比取一个字节要高效,也更方便。所以在结构体中每个成员的首地址都是4的整数倍的话,取数据元素时就会相对更高效,这就是内存对齐的由来。每个特定平台上的编译器都有自己的默认“对齐系数”。程序员可以通过预编译命令#pragrna pack(n),n=1,2,4,8,16来改变这一系数,其中的n就是要指定的“对齐系数”。默认状态下,编译器为每个成员按自然对齐(alignment)条件分配空间。
结构体的第一个数据成员放在偏移为0的地方,以后每个数据成员的对齐按照#pragma pack指定的数值和这个数据成员自身长度决定。在数据成员完成各自对齐之后,结构体本身也要进行对齐,对齐将按照#pragma pack指定的数值和结构最大数据成员长度决定。
转载请注明原文地址:https://kaotiyun.com/show/ORWZ777K
本试题收录于:
嵌入式系统设计师上午基础知识考试题库软考中级分类
0
嵌入式系统设计师上午基础知识考试
软考中级
相关试题推荐
阅读下列说明,回答问题。【说明】近年来,随着信息化水平不断提高,以电子商务模式提供的网络服务和交易也得到了飞速的发展和应用,网上银行、网络线上支付、手机购物、支付宝和微信红包等得到了普遍的应用,为民众购物、消费提供了极大的便利。国内
下面关于Windows2000操作系统和Linux操作系统的比较,正确的是(4)。
A well-designed system should be(73)。 ①easily understood ②reliable ③straightforward to implement ④straightforwar
在数据流图中,带箭头的直线表示(19)。 两条平行线表示(20)。
运行Web浏览器的计算机与网页所在的计算机要建立(33)连接,采用(34)协议传输网页文件。
(11)在实验阶段进行,它所依据的模块功能描述和内部细节以及测试方案应在(12)阶段完成,目的是发现编程错误。(13)所依据的模块说明书和测试方案应在(14)阶段完成,它能发现设计错误。
________是监理工程师的法律责任的表现行为。
对入侵检测技术描述错误的是()。
请根据表5-6中的数据,完成该项目的单代号网络图,以表明各活动之间的逻辑关系。各工作节点用如图5-3所示的样图标识。图例说明:ES:最早开始时间EF:最早结束时间DU:作业历时ID:作业代号LS:最迟
随机试题
根据顾客对网络服务的不同需要,进而确定企业网站在网上市场中所处的不同位置的过程是指【】
器官移植后会发生缺血一再灌注损伤。
下列方剂中,主治阳郁厥逆证,肝脾气郁证的是
调查项目可分为()。
(1)A公司的财务报表资料如下:(2)A公司2011年的相关指标如下表。表中各项指标是根据当年资产负债表中有关项目的期末数与利润表中有关项目的当期数计算的。(3)计算财务比率时假设:“货币资金”全部为金融资产,“应收票据”、“应收账款”、“其他应
幼儿性别行为产生于()
下列不属于白色食品的是()。
我国政务公开的出发点和落脚点为:
下列叙述中错误的是
下列字符中,其ASCII码值最大的是
最新回复
(
0
)