當前位置:首頁 » 編程語言 » c語言函數與變數同名
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言函數與變數同名

發布時間: 2023-06-12 05:35:11

c語言中,在同一個函數下局部變數和局部靜態變數可以同名嗎

不可以,同一作用域的變數名不允許相同, 不同作用域下的同名變數起作用的是最後一層。

Ⅱ c語言中函數名是否可以和變數同名

最好別那樣。如果這樣你調用的時候就亂了,系統不知道你調用的是函數還是指針就會報錯,所以盡量不要用系統函數

Ⅲ C語言:各函數內部定義的靜態局部變數可否同名

可以。靜態變數一旦被定義,內存中分配給該變數的空間不會被釋放,虛枯直到掉電。但這和變數名相同與否是兩個概念,變數名只是內存空間的一個名稱或者指示指針而已。如果兩個同名的靜態變數在兩個不同的函數內部被定義,山州內存分配時地址指針並不同,所有不會沖突。函數內部定義的靜態變數在應用時需要注意一個問題:如果該功能函數被兩個獨立的對象同時調用,該靜態變數逗譽蔽是沖突的,此時該靜態變數必須被定義為獨立對象的成員。

Ⅳ c語言中局部變數可以同名么

在C語言中,相同作用域范圍的局部變數不可以同名。所以,在不同作用域下,可以出現局部變數同名的情況。

1 在不同函數中。

函數不同,局部變數完全無關,自然可以使用相同的名字。

2 在同一函數中,但作用域不同。

局部變數的作用域是定義位置,到所在大括弧結束。

所以只要兩個局部變數屬於不同的大括弧中,就可以同名。

比如

voidfunc()
{
inta;
while(1)
{
inta;
}
for(;;)
{
inta;
}
}

這裡面,第一個a的作用域包含了第二個和第三個,而後兩個之間作用域不相關。三個a分別屬於三個不同的大括弧,可以同名。