2024年10月10日 16:50

This commit is contained in:
许大仙 2024-10-10 08:50:04 +00:00
parent ebce646668
commit e39f819935

View File

@ -681,8 +681,8 @@ struct {
> [!NOTE]
>
> * ① 在声明结构体的同时定义结构体变量,但是不给结构体名。
> * ② 和`方式二`相比,后面的程序将无法通过该结构体来定义变量,除非使用 `typedef` 关键字。
> * ① 在声明结构体的同时定义结构体变量,但是不给结构体名,这种方式的结构体也称为`匿名结构体`
> * ② 和`方式二`相比,后面的代码将无法通过该结构体来定义变量,因为没有结构体名称,除非使用 `typedef` 关键字。
@ -843,13 +843,19 @@ int main() {
* 语法:
```c
struct 结构体类型 结构体变量 = {...};
struct 结构体类型 结构体变量 = {...};
```
```c
struct 结构体类型 结构体变量 = {.成员 = xxx,...};
struct 结构体类型 结构体变量 = {.成员 = xxx,...};
```
> [!NOTE]
>
> * ① `struct 结构体类型 结构体变量 = {...};`,需要和声明结构体中成员的顺序保持一致。
> * ② `struct 结构体类型 结构体变量 = {.成员 = xxx,...};` ,不需要和声明结构体中成员的顺序保持一致。
> * ③ 如果初始化的属性少于声明时的属性,剩下的那些属性都会初始化为 0 。
> [!IMPORTANT]
>
> CLion 中其实是有这类语法提示的,如下所示: