c语言结构体赋值问题

时间:2023-03-09 06:14:25
c语言结构体赋值问题

对于结构体赋值问题:

 static psl{
int a;
char ch;
};

我过去一般会对结构体这样赋值:

static psl pslname = {
, 'b',
};

记住有一点,‘b’ 后面的逗号可有可无,至于具体为什么,我只能理解自己能力还不够。

现在只知道可有可无。

上面这种赋值方式是对的。

看看下面的一种赋值方式:

static psl pslname = {
.a = ,
.ch = 'b'
};

这种方式也是对的。

点就代表了pslname。

这种方式赋值可以使赋值的顺序变化。

static psl pslname = {
.ch = 'b',
.a = ,
};

在linux内核里面有很多这样对结构体赋值的。

初次看这种代码,自己有点不懂,特此把它记下。