它是一个定义还是一个声明?
这个问题在这里已经有了答案:
这是一个声明。 它声明了struct foo
类型。
(C99,6.7p5)“声明指定了一组标识符的解释和属性,标识符的定义是对该标识符的声明:
- 对于一个对象,导致为该对象保留存储空间;
- 对于功能,包括功能体; 101)
- 对于枚举常量或typedef名称,是标识符的(唯一)声明。“
你的理解是正确的。 你的代码示例是一个类型的声明。 在'C'中,你可以声明一个类型并立即用它来定义一个变量。
所以你的例子是一个纯粹的声明。
这里是一个声明+变量定义的例子:
struct foo {
char name[10];
char title[10];
int salary;
} var;
链接地址: http://www.djcxy.com/p/40625.html