高级C语言教程-作用域
C語言中一共有4中作用域:代碼塊作用域、文件作用域、函數(shù)作用域和原型作用域。
1.代碼塊的作用域,位域一對大括號中的所有語句構(gòu)成一個代碼塊(Block)任何在代碼塊開始聲明的標(biāo)識符都具有代碼塊作用域,函數(shù)定義的形參在函數(shù)內(nèi)部也具有代碼塊的作用域。
在函數(shù)后面聲明一個新的代碼塊可以再次進(jìn)行變量的聲明而不會報錯。
輸出:
/home/andrew/文檔/IMPORTENT_C/cmake-build-debug/IMPORTENT_C ''setjmp'' is initializing ''j'' exception raised Case 3 i = 3Process finished with exit code 0文件作用域
任何在所有代碼塊之外聲明的標(biāo)識符(也就是這個標(biāo)識符不屬于任何代碼塊)都具有文件作用域(File Scope)。它表示這些標(biāo)識符在整個聲明這些標(biāo)識符的文件中都可以被訪問。
注意:在文件中定義的函數(shù)名也具有文件作用域,因為函數(shù)本身不屬于任何代碼塊。
函數(shù)作用域
函數(shù)作用域不但決定了可以在程序的什么位置調(diào)用函數(shù),而且決定了函數(shù)可以訪問那些定義,適用于變量標(biāo)識符的作用域規(guī)則也同樣適用于函數(shù)標(biāo)識符。在全局作用域中聲明的函數(shù)在整個代碼中都可以使用。
原型作用域
C語言程序中,函數(shù)的應(yīng)用分為函數(shù)定義和函數(shù)服務(wù)(調(diào)用)兩部分。文件的定義通常在文件的作用域。
總結(jié)
以上是生活随笔為你收集整理的高级C语言教程-作用域的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 大数据环境下的存储系统构建:挑战、方法和
- 下一篇: 2015年《大数据》高被引论文Top10