参考 c primer plus p441、 p442
结构的声明:
struct book {
char title[size];
char author[size];
int* value;
.....
}
这只是声明描述结构是由哪些类型的变量组成,并未创建实际的数据对象,只是描述了对象由什么组成; 有时我们称结构声明 为 模板 它勾勒出如何存储数据;
"声明的同时没有给结构分配空间"
关键于struct, struct后是一个可选的标记(例中 book),可以通过该标记引用该结构
struct book library; "声明一个使用book结构布局的结构变量"
定义结构变量:
struct book library; "声明一个使用book结构布局的结构变量"
声明结构布局的时候没有分配空间,创建(声明)结构变量编译器会使用book模板为改变量(library)分配空间,
内部的几个类型的变量储存空间是与名称(library)结合在一起的
声明可以简化:
struct book{
char
char
float
}library;"*声明的后面花括号之后很变量名"
将声明结构的过程与定义结构变量的过程合并起来了
网友评论