函數(shù)的隱含存儲類型是extern,按照c語言的原則,函數(shù)隱含為全局都可以訪問,因此默認為extern,而auto只用于變量,是變量的隱含存儲類型。

創(chuàng)新互聯(lián)專注于企業(yè)成都全網(wǎng)營銷、網(wǎng)站重做改版、壽寧網(wǎng)站定制設計、自適應品牌網(wǎng)站建設、H5技術、商城網(wǎng)站建設、集團公司官網(wǎng)建設、外貿(mào)營銷網(wǎng)站建設、高端網(wǎng)站制作、響應式網(wǎng)頁設計等建站業(yè)務,價格優(yōu)惠性價比高,為壽寧等各大城市提供網(wǎng)站開發(fā)制作服務。
c語言中的存儲類型有static 、auto、extern、及register,函數(shù)默認的存儲類型應該是extern,意思是具有外部鏈接性的。一般來說,會通過extern來聲明函數(shù)。比如下面的代碼,在1.c中定義一個函數(shù),函數(shù)的聲明寫在1.h頭文件中,在2.c中通過添加1.h的頭文件,來聲明及調(diào)用函數(shù)f()。
//1.c
void?f()?{?;?}
//1.h
extern?void?f();
//2.c
#include?"1.h"
int?main()?{?f();}
c語言中,函數(shù)的隱含存儲類別是extern
形參的默認存儲類別是auto
C語言標準庫函數(shù)存放在頭文件當中,使用相應函數(shù)時需要用include引用先關頭文件。
C語言程序設計里,C 標準函數(shù)(C Standard library)是所有目前符合標準的頭文件(head
file)的集合,以及常用的函數(shù)庫實現(xiàn)程序,例如 I/O輸入輸出和字串符控制。不像 COBOL、Forrian和 PL/I等編程語言,在 C
語言的工作任務里不會包含嵌入的關鍵字,所以幾乎所有的 C 語言程序都是由標準函數(shù)庫的函數(shù)來創(chuàng)建的。
下面列出C89及C99中C語言標準函數(shù)庫的頭文件。
C89中標準的頭文件
assert.h 設定斷言點
ctype.h 字符處理
errno.h 錯誤報告
float.h 定義與實現(xiàn)相關的浮點值勤
limits.h 定義與實現(xiàn)相關的各種極限值
locale.h 支持函數(shù)setlocale()
math.h 數(shù)學函數(shù)庫使用的各種定義
setjmp.h 支持非局部跳轉(zhuǎn)
signal.h 定義信號值
stdarg.h 支持可變長度的變元列表
stddef.h 定義常用常數(shù)
stdio.h 支持文件輸入和輸出
stdlib.h 其他各種聲明
string.h 支持串函數(shù)
time.h 支持系統(tǒng)時間函數(shù)
C99新增的頭文件和庫
complex.h 支持復數(shù)算法
fenv.h 給出對浮點狀態(tài)標記和浮點環(huán)境的其他方面的訪問
inttypes.h 定義標準的、可移植的整型類型集合。也支持處理最大寬度整數(shù)的函數(shù)
iso646.h 首先在此1995年第一次修訂時引進,用于定義對應各種運算符的宏
stdbool.h 支持布爾數(shù)據(jù)類型類型。定義宏bool,以便兼容于C++
stdint.h 定義標準的、可移植的整型類型集合。該文件包含在inttypes.h中
tgmath.h 定義一般類型的浮點宏
wchar.h 首先在1995年第一次修訂時引進,用于支持多字節(jié)和寬字節(jié)函數(shù)
wctype.h 首先在1995年第一次修訂時引進,用于支持多字節(jié)和寬字節(jié)分類函數(shù)
auto 只是用于局部變量,register一定是auto
函數(shù)的存儲類型指的是其他文件模塊可否訪問,按照C語言的原則,函數(shù)隱含為全局(本項目中)都可以訪問,因此默認為extern,如果函數(shù)前面加上static則說明該函數(shù)只能被本源程序文件中的模塊訪問
所以答案就是C
函數(shù)的存儲類型指的是其他文件模塊可否訪問,其類別可以是extern或static。
static是指該函數(shù)只能被本源程序文件道中的模塊訪問。extern是指可被本源程序文件外的模塊訪問。
C語言中函數(shù)的存儲類型隱含為版全局的,因此默認為extern。
函數(shù)內(nèi)定義的變量,默權認作用域在本函數(shù)內(nèi),即其類型是auto。
擴展資料:
C語言中提供了存儲說明符auto、register、extern、static說明的四種存儲類別。四種存儲類別說明符有兩種存儲期:自動存儲期和靜態(tài)存儲期。
其中auto和register對應自動存儲期。具有自動存儲期的變量在進入聲明該變量的程序塊時被建立,它在該程序塊活動時存在,退出該程序塊時撤銷。在函數(shù)內(nèi)部定義的變量成為局部變量。在某些C語言教材中,局部變量稱為自動變量,這就與使用可選關鍵字auto定義局部變量這一作法保持一致。
extern用在變量聲明中常常有這樣一個作用:要在*.c文件中引用另一個文件中的一個全局的變量,那就應該放在*.h中用extern來聲明這個全局變量。
extern用于變量的用法:
1、extern int a;//聲明一個全局變量a
2、int a; //定義一個全局變量a
3、extern int a =0 ;//定義一個全局變量a 并給初值。一旦給予賦值,一定是定義,定義才會分配存儲空間。(注意:經(jīng)過測試在GCC中,這樣定義變量是不能通過編譯的,而在VS2013可以)
參考資料來源:百度百科——extern
參考資料來源:百度百科——auto
本文標題:c語言中函數(shù)存儲,C語言中函數(shù)的隱含存儲類型
文章URL:http://chinadenli.net/article22/dsgcdjc.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站營銷、搜索引擎優(yōu)化、App設計、外貿(mào)網(wǎng)站建設、標簽優(yōu)化、電子商務
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)