永发信息网

C语言中联合和结构有什么区别

答案:2  悬赏:40  手机版
解决时间 2021-02-24 02:15
如题...多方面论证
最佳答案
前面对联合变量的定义和联合变量成员的表示以及对联合变量的赋值作了描述,可以看出联合与结构有许多相似之处,但是也指出了两者的最大区别在于联合是共址的,结构是异址的。即联合的所有成员共同使用一个内存地址,而结构的每个成员都有自己的内存地址。 由于联合的共址特性使得它与结构产生了很大差别。例如,在斌初值时,联合变量只能给第一个成员赋初值;不能对联合变量名赋值;不能用联合变量作函数参数,也不能用联合变量作函数的返回值,只能用指向联合变量的指针作函数参数。 下面举出两个例子说明联合变量的使用和特点。 [例9.1] 分析下列程序的输出结果,进而说明联合变量的成员是共址的。uninn data{char c_data;int i_data;float f_data;};main(){unian data dl;d1.c_data='a';dl.i_data=5;d1.f_data=3.7;printf ("%c\t%d\t%.2f\n",dl.c._data,dl.i_data,dl. f,data);printf("%d\n',sizeof(dl));printf(" %p\t%p\t%p\t%p\n",&dl.c_data,&dl.i_data,&dl.f.data,&dl);} 执行该程序输出结果如下:
? ? 3.7(?表示无意义)
4
FFD6 FFD6 FFD6 FFD6 说明: (1)该程序中,首先定义一个联合,其名为data,它有3个成员,分别是三种不同类型。又定义联合变量d3,并给它的三个成员分别赋值。当使用printf ( )函数输出dl的三个成员的值时,前两个成员输出值是无意义的,只有最后一个成员是有意义的,其值为3. 7.这说明:某一时刻一个联合变量中只有一个成员起作用,其他成员不起作用。 (2)输出,SizeoE(dl )的值为4,这说明联合变量d1占内存4个字节。在多个联合成员共占一个内存地址时,该地址所指向的内存空间是所有成员中占内存空间最大的成员所占的内存空间。该例中的三个成员所占内存字节数分别为1.2和4,最大的是4,因此,联合变量dl所占内存空间为4个字节。 (3)使用printf ( )函数分别输出联合变量dl的三个成员的内存地址都是相同的,并且与联合变量dl的地址值也是相同的,可见联合变量各成员是共址的。
全部回答
举例说明 例如你使用的是turboc include 代表编译时直接在turboc软件设置指定的路径(默认是turboc所在文件夹下的include文件夹)中寻找里面是否有stdlib.h的库文件。如果有,直接加载;如果没有,报错(无法找到库文件)。 include "stdlib.h" 代表编译时先寻找你正在编辑的源代码文件(c或cpp文件)所在的文件夹里面有没有stdlib.h的库文件。如果有,优先加载这个文件(上面提到的include文件夹下的stdlib.h文件就被无视了),如果没有,就会在turboc软件设置指定的路径(默认是turboc所在文件夹下的include文件夹)中寻找里面是否有stdlib.h的库文件。如果有,直接加载;如果没有,报错(无法找到库文件)。 这就是两者的区别 所以,如果你自己编写了库文件(并且没有将它移动到turboc指定的include文件夹里),要在源代码文件(c或cpp文件)中将这个文件包含进去,就必须使用双引号格式的include语句,而不能使用带<>号的。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
怎么计算限免这个电路图的输出电流与输入电压
杨木我想知道这个在什么地方
如何开通来电显示业务
请问250元每天广交会英语翻译难度怎么样?
松滋市迅捷传媒广告有限公司在哪里啊,我有事
《超能陆战队国语版》下载高清完整版
%E6%B8%B8%E6%88%8F%E8%B4%A6%E5%8F%B7 --来
沉香辽细辛杏仁粉甘草混合的功效和作用
过年都在家干什么呢
next奥特曼剧场版是不是成人看的
国家电网自助服务厅地址有知道的么?有点事想
用瓜子仁做什么菜好吃
河店镇销金寺明德小学地址在什么地方,我要处
要做一份关于科技的电脑手抄报,想要一些文字
贝贝美甲我想知道这个在什么地方
推荐资讯
西宁去昆明特价机票
沙河北岸地址在哪,我要去那里办事
单位给个人开具的工资收入证明,落款应该盖什
什么人物能代替齐天大圣玩任务
张飞狗肉馆地址有知道的么?有点事想过去
单选题Thenewsofherdeath_____quickly.
洋鸭冲地址有知道的么?有点事想过去
梦见爱人失去自由什么意思?
迢迢年华空惹三千青丝覆尽如花美眷是什么意思
摆摆逼波摆是什么英文歌曲歌词
我跟男友是异地恋,男友总说我能给他家的感觉
可多华可以长期服用吗
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?