C语言 在不同的 .c 文件中可以定义相同名称的函数吗? 10
C语言在不同的.c文件中可以定义相同名称的函数吗?C语言在不同的函数或者.c文件中能定义相同的静态变量或者方法吗?...
C语言 在不同的 .c 文件中可以定义相同名称的函数吗?
C语言 在不同的 函数或者 .c 文件 中能定义相同的静态变量或者方法吗? 展开
C语言 在不同的 函数或者 .c 文件 中能定义相同的静态变量或者方法吗? 展开
2个回答
展开全部
函数:
1.C语言在相同的.c文件中一定不能定义名称相同的函数,即使是重载的,因为C语言不支持重载,这样链接的时候会报错。
2不同的.c文件中一般不能定义名称相同的函数,比如int func(int*);如果非要定义名称相同的函数,而且函数只在该(对应的).c文件中使用,可以声明成static类型。如两个函数都定义为static int func(int*);这样就可以定义成相同名字。
变量:
1.静态变量在同一个.c文件中可以命名相同,但是只能初始化一次,否则链接出错。而且实际只有一个该名字的变量。
如 static int tst; static int tst; //可以。
static int tst = 0; static int tst; //可以
static int tst = 0; static int tst = 0;//错误
2.静态变量在不同.c文件中可以命名相同。但是该变量只能在该.c文件中使用。
具体可以百度强符号与弱符号。
以上。
1.C语言在相同的.c文件中一定不能定义名称相同的函数,即使是重载的,因为C语言不支持重载,这样链接的时候会报错。
2不同的.c文件中一般不能定义名称相同的函数,比如int func(int*);如果非要定义名称相同的函数,而且函数只在该(对应的).c文件中使用,可以声明成static类型。如两个函数都定义为static int func(int*);这样就可以定义成相同名字。
变量:
1.静态变量在同一个.c文件中可以命名相同,但是只能初始化一次,否则链接出错。而且实际只有一个该名字的变量。
如 static int tst; static int tst; //可以。
static int tst = 0; static int tst; //可以
static int tst = 0; static int tst = 0;//错误
2.静态变量在不同.c文件中可以命名相同。但是该变量只能在该.c文件中使用。
具体可以百度强符号与弱符号。
以上。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询