c语言结构体能否整体赋值

来源:百度知道 编辑:UC知道 时间:2024/06/04 07:49:04
共用体可以整体赋值,那结构体呢?可否对结构体整体赋值?即先定义两个同类型的结构体变量,给其中一个赋初值,再把这个被赋了初值的结构体变量赋值给另一个结构体变量,

可以是可以,但它有一个条件,这里的赋初值不是想别的数据类型(如 int a;a=5;)它必须是对结构体中的每个成员以此赋值的,你可以从楼上所写的例子看出这一点。
将一个结构体变量的值直接赋给另外一个结构体变量的时候,这两个结构体必须是相同结构体名。

可以的:

#include "stdio.h"
struct date
{
int i;
float x;
} d1={10,12.5};

void main()
{
struct date d2;
d2=d1;
printf("%d, %f\n",d2.i,d2.x);

}