苦参人工栽培技术视频:C语言.共用体的问题

来源:百度文库 编辑:高考问答 时间:2024/05/06 06:09:09
问:
C语言规定共用体一旦改了一个值其余的值都会发生变化,那么它的变化是怎样的!

最好举个例子
我就利用jsbanwjly 的例子`如果修改了I只值那么下面的J.K会发生变化吗?
还有`明确>我想知道的是他变化的情况`例如I本身的值为1..K的值为3,我将K的值修改为4的时候不知道I的值会不会也跟着K的值加1变成2呢?
借用了jsbanwjly 的例子先说对不起了

比如
union a
{
int i;
char j;
double k;
}
系统这时只给他们分配一个double类型所需的空间
因为它用的空间最大,在给其中的一个赋值的时候其他的数据就不存在了。

看书
写代码
看书
写代码
问题就解决了

它们是共用一段内存,修改了值就相当于修改该内存中存储的内容,其它的当然也就跟着变化了

既然叫共用体,也就是说几个成员共用一个存储空间,同一时间,只能有一个成员存在."共用体一旦改了一个值其余的值都会发生变化",这句话不能按照字面意思来理解.