如下声明,static是一种存储类型,但声明明显是不分配内存的,那static的作用是什么的。
static struct node{
int key;
node *next;
};
static struct node{
int key;
node *next;
};
|
cosinerJul 22, 2015
1
文件作用域吧
|
|
hellogmhJul 22, 2015
2
跟static加在普通函数(C的普通函数,不是C++的类成员函数)一样,链接的时候不会被其他模块引用,限制了在文件作用域内。
|
|
3
|
|
4
|
|
kkwezardJul 22, 2015
5
static不属于一个结构体的声明。你应该先typedef一个结构之后在用static修饰它的定义。
|
|
kkwezardJul 22, 2015
6
用static修饰结构体定义是不对的。至少我这编译不通过的。
|
|
townboyJul 22, 2015
7
二楼说的很有道理
|
|
xylophone21Jul 22, 2015
11
在.c里声明的结构体本身就无法被外部引用,所有二楼的说法应该是错误的。
注意:是结构体的声明,不是变量定义 |