diff --git a/docs/notes/02_c-leap/07_xdx/index.md b/docs/notes/02_c-leap/07_xdx/index.md index ff261ed..35ca53c 100644 --- a/docs/notes/02_c-leap/07_xdx/index.md +++ b/docs/notes/02_c-leap/07_xdx/index.md @@ -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 中其实是有这类语法提示的,如下所示: