C语言杂记 0x05

结构体

struct complex_struct{
    double x,y;
};//注意分号

结构体初始化(1)

struct complex_struct{
    double x,y;
}z1,z2;//注意分号

结构体初始化(2)

struct complex_struct{
    double x,y;
};

struct complex_struct z1,z2;

结构体初始化(3)

struct{
    double x,y;
}z1,z2;
//这样的结构体没办法进行其他扩展,只能有z1,z2两个变量

结构体赋值(1)

struct complex_struct{
    double x,y;
}z;//注意分号

z.x = 0.1;
z.y = 0.5;

结构体赋值(2)

struct complex_struct z = {0.1 , 0.5};
//Initializer里面的数据依次赋值给结构体中的变量,如果Initializer中的数据比结构体中的变量多,
//那么complier会报错
//如果Initializer中的数据比结构体中的变量少,则会像全局变量一样将未赋值的变量赋值为0

struct complex_struct z = {0.1 , 0.5};
//Initializer里面的数据依次赋值给结构体中的变量,如果Initializer中的数据比结构体中的变量多,那么complier会报错
//如果Initializer中的数据比结构体中的变量少,则会像全局变量一样将未赋值的变量赋值为0

注意:

struct complex_struct z ;
z = {0.1 , 0.5};
//这种情况是错误的

enum关键字

enum 变量名 {元素a,元素b,元素c,.....};
//这样a b c就一次被赋值0 1 2....

还可以

enum 变量名 {元素a = 2,元素b,元素c,.....};
//那么a b c就是2 3 4 .....

猜你喜欢

转载自blog.csdn.net/ahzahz/article/details/81061678