Ⅰ c语言中,在同一个函数下局部变量和局部静态变量可以同名吗
不可以,同一作用域的变量名不允许相同, 不同作用域下的同名变量起作用的是最后一层。
Ⅱ c语言中函数名是否可以和变量同名
最好别那样。如果这样你调用的时候就乱了,系统不知道你调用的是函数还是指针就会报错,所以尽量不要用系统函数
Ⅲ C语言:各函数内部定义的静态局部变量可否同名
可以。静态变量一旦被定义,内存中分配给该变量的空间不会被释放,虚枯直到掉电。但这和变量名相同与否是两个概念,变量名只是内存空间的一个名称或者指示指针而已。如果两个同名的静态变量在两个不同的函数内部被定义,山州内存分配时地址指针并不同,所有不会冲突。函数内部定义的静态变量在应用时需要注意一个问题:如果该功能函数被两个独立的对象同时调用,该静态变量逗誉蔽是冲突的,此时该静态变量必须被定义为独立对象的成员。
Ⅳ c语言中局部变量可以同名么
在C语言中,相同作用域范围的局部变量不可以同名。所以,在不同作用域下,可以出现局部变量同名的情况。
1 在不同函数中。
函数不同,局部变量完全无关,自然可以使用相同的名字。
2 在同一函数中,但作用域不同。
局部变量的作用域是定义位置,到所在大括号结束。
所以只要两个局部变量属于不同的大括号中,就可以同名。
比如
voidfunc()
{
inta;
while(1)
{
inta;
}
for(;;)
{
inta;
}
}
这里面,第一个a的作用域包含了第二个和第三个,而后两个之间作用域不相关。三个a分别属于三个不同的大括号,可以同名。