我是一名中级C程序员。我正在阅读一个简单的C代码片段。
int a ; // A
const int b; // B
static int c; //C
void func(int d) // D
{
//.....
}
变量a、b、c和d之间的关联是什么?我相当确定默认情况下,变量a具有外部链接性,而变量b、c和d具有内部链接性。我的理解是正确的吗?
这是我在该网站上的第一个问题。
a
和b
具有外部链接性,而c
具有内部链接性。在C++中,你是正确的,b
也将具有内部链接性。func
具有外部链接性;d
没有链接性。a、b和c都具有相同的链接,如果它们在全局范围内声明,那么它们看起来是这样的。
d是一个函数参数,在调用该函数时创建,并且在函数返回时不再存在。
int c
上的 'static' 关键字表示它在当前源文件之外不可用。 - tdammers