新聞中心
C語言中的靜態(tài)函數(shù)的作用是什么?
動(dòng)態(tài)函數(shù)執(zhí)行結(jié)束后,函數(shù)占用的內(nèi)存會被注銷掉,數(shù)值不保留,靜態(tài)就可以保留數(shù)值
創(chuàng)新互聯(lián)是專業(yè)的嵐縣網(wǎng)站建設(shè)公司,嵐縣接單;提供成都做網(wǎng)站、成都網(wǎng)站制作,網(wǎng)頁設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行嵐縣網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來合作!
C語言靜態(tài)函數(shù)的問題,不是C++里的靜態(tài)方法
樓上只說一半,可致電A和B是兩個(gè)功能確實(shí)使用包括添加a.cpp和b.cpp的main.cpp里面使用包括實(shí)際的相應(yīng)的代碼的位置。真的做的項(xiàng)目沒有這樣做,并正在使用的頭文件,
靜態(tài)函數(shù)和變量在其他文件中是完全不可見的,這是錯(cuò)誤的的地方樓上,即使有出口extern聲明函數(shù)不能在編譯的時(shí)候沒有通過,將上報(bào)的靜態(tài)類型錯(cuò)誤,不能導(dǎo)出。 。 。在
頭文件中加入你的原始文件結(jié)構(gòu):
/ /啊
#包括
使用命名空間std;
無效的(??); BR / / / BH
無效();
然后改變里面的兩個(gè)main.cpp中包括AH和BH編譯:g+ +的main.cpp的a.cpp b.cpp會發(fā)現(xiàn)報(bào)告的錯(cuò)誤:
a.cpp:在函數(shù)'無效():
a.cpp:3:錯(cuò)誤:無效()“被宣布為”外部“和后來的”靜態(tài)“
?。?:錯(cuò)誤:()先前的聲明“無效”
這里是因?yàn)橐粋€(gè)函數(shù)的靜態(tài)類型,你不能出口,擺脫靜態(tài)這里可以編譯通過。 。 。 。
這是靜態(tài)的使用
計(jì)算機(jī)c語言中什么是靜態(tài)函數(shù)
靜態(tài)函數(shù)
首先是一個(gè)函數(shù)
,其次由于其實(shí)static
使其變?yōu)槿趾瘮?shù)
,可以被該文件內(nèi)的任何函數(shù)調(diào)用,不能被其它文件的函數(shù)調(diào)用
C語言中靜態(tài)函數(shù)的用途求教!
靜態(tài)函數(shù)在c中只有用來表示不能被其它文件訪問的全局函數(shù)這這一個(gè)作用
sunshine66同志,看好行么,人家說得是函數(shù),不是變量
c語言靜態(tài)函數(shù)調(diào)用問題
樓上只說對一半,這里能調(diào)用a和b兩個(gè)函數(shù)確實(shí)是因?yàn)槭褂胕nclude把a(bǔ).cpp和b.cpp加入到了main.cpp里面,使用include實(shí)際是把對應(yīng)代碼加到include的位置。真正做項(xiàng)目沒有這樣做的,都是使用頭文件的方式;
static修飾的函數(shù)和變量在別的文件是絕對不可見的,這是樓上錯(cuò)誤的地方,即使使用extern聲明函數(shù)導(dǎo)出,也不可以,編譯時(shí)根本就不能通過,會報(bào)static類型錯(cuò)誤,不能導(dǎo)出。。。
在你原來文件結(jié)構(gòu)上加入頭文件:
//a.h
#include iostream
using namespace std;
void a();
//b.h
void b();
然后把main.cpp里面的2個(gè)include分別改成a.h和b.h,編譯:g++ main.cpp a.cpp b.cpp會發(fā)現(xiàn)報(bào)錯(cuò)誤:
a.cpp: In function ‘void a()’:
a.cpp:3: error: ‘void a()’ was declared ‘extern’ and later ‘static’
a.h:3: error: previous declaration of ‘void a()’
這里就是因?yàn)閍函數(shù)是static類型,不能導(dǎo)出,把static去掉這里就可以編譯通過了。。。。
這也是static其中一個(gè)用法
c語言中static 函數(shù)和普通函數(shù)的區(qū)別
static 函數(shù)和普通函數(shù)的區(qū)別如下:
在C語言中,static函數(shù)被限定只能在該函數(shù)所在的源文件里面的函數(shù)被調(diào)用,而不能被其他源文件的函數(shù)所調(diào)用,也就是說該函數(shù)只能被限定在其所在的源文件內(nèi)被訪問,無法被外部調(diào)用。
當(dāng)前標(biāo)題:靜態(tài)函數(shù)c語言,靜態(tài)函數(shù)c語言有哪些
瀏覽地址:http://fisionsoft.com.cn/article/hesdjc.html