下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
c語言根底面試題及答案面試前的準(zhǔn)備對于程序員求職者來說是非常重要的。下面精心了一些c語言根底面試題及答案的例文,希望可以幫到你!1、局部變量能否和全局變量重名?答:能,局部會屏蔽全局。要用全局變量,需要使用"::"用到同名的局部變量,而不會用到全局變量。對于有些編譯器而那個循環(huán)體內(nèi)。2答:extern可以用引用頭文件的方式,也可以用extern用頭文件方式來引用某個在頭文件中聲明的全局變理,假定你將那個變寫錯了,那么在編譯期間會報錯,如果你用extern3.C答:可以,在不同的C文件中以static形式來聲明同名全局變量??梢栽诓煌腃文件中聲明同名的全局變量,前提是其中只能有一個C文件中對此變量賦初值,此時連接不會出錯4、語句for(;1;)有什么問題?它是什么意思?答:和while(1)相同。5、do……while和while……do有什么區(qū)別?答:前一個循環(huán)一遍再判斷,后一個判斷以后再循環(huán)6、static?static?static全局變量(外部變量)的說明之前再冠以static就構(gòu)成了靜態(tài)的全局變量。全局變量本身就是靜態(tài)存儲方式,靜態(tài)全局變量當(dāng)然雖在于非靜態(tài)全局變量的作用域是整個源程序,當(dāng)一個源程序由多個源文件組成時,非靜態(tài)的全局變量在各個源文件中都是有效的。而靜態(tài)全局變量那么限制了其作用域,即只在定義該變量的源文件變量的作用域局限于一個源文件內(nèi),只能為該源文件內(nèi)的函數(shù)公它的存儲方式即改變了它的生存期。把全局變量改變?yōu)殪o態(tài)變量后static(static),內(nèi)部函數(shù)應(yīng)該在當(dāng)前源文件中說明和定義。對于可在當(dāng)前源文件以外使用的函數(shù),應(yīng)該在一個頭文件中說明,要使用這些函數(shù)的源文件要包含這個頭文件staticstaticstaticstatic1:變量的聲明和定義有什么區(qū)別為變量分配地址和存儲空間的稱為定義,不分配地址的稱為聲明。一個變量可以在多個地方聲明,但是只在一個地方定義。參加extern面局部定義。說明:很多時候一個變量,只是聲明不分配內(nèi)存空間,直到詳細(xì)使用時才初始化,分配內(nèi)存空間,如外部變量。2:Cstatic和C++的關(guān)鍵字static區(qū)別在C中static而C++中除了上述功能外,還用來定義類的成員變量和函數(shù)。即靜態(tài)成員和靜態(tài)成員函數(shù)。注意:編程時static的記憶性,和全局性的特點可以讓在不同時期調(diào)用的函數(shù)進(jìn)展通信,傳遞信息,而C++的靜態(tài)成員那么可以在多個對象實例間進(jìn)展通信,傳遞信息。3:C中的malloc和C++中的new有什么區(qū)別malloc和new有以下不同:(1)new、delete是操作符,可以重載,只能在C++中使用。(2)malloc、free是函數(shù),可以覆蓋,C、C++中都可以使用。(3)new可以調(diào)用對象的構(gòu)造函數(shù),對應(yīng)的delete調(diào)用相應(yīng)的析構(gòu)函數(shù)。mallocfree和析構(gòu)函數(shù)newdelete、free回的是void注意:malloc申請的內(nèi)存空間要用free釋放,而new申請的內(nèi)存空間要用delete釋放,不要混用。因為兩者實現(xiàn)的機理不同。4:寫一個“標(biāo)準(zhǔn)”宏MIN#definemin(a,b)((a)<=(b)?(a):(b))注意:在調(diào)用時一定要注意這個宏定義的副作用,如下調(diào)用:((++*p)<=(x)?(++*p):(x)。pMIN5:一個指針可以是volatile可以,因為指針和普通變量一樣,有時也有變化程序的不可控性。常見例:子中斷效勞子程序修改一個指向一個buffer的指針時,必須用volatile來修飾這個指針。說明:指針是一種普通的變量,從訪問上沒有什么不同于其他變量的特性。其保存的數(shù)值是個整型數(shù)據(jù),和整型變量不同的是,這個整型數(shù)據(jù)指向的是一段內(nèi)存地址。1:a&a請寫出以下代碼的打印結(jié)果,主要目的是考察a&a#includevoidmain(void){inta[5]={1,2,3,4,5};int*ptr=(int*)(&a+1);printf("%d,%d",*(a+1),*(ptr-1));return;}輸出結(jié)果:2,5。aint*ptr=(int*)(&a+1)為int*ptr=(int*)(a+1)2:簡述C、C++程序編譯的內(nèi)存分配情況C、C++中內(nèi)存分配方式可以分為三種:(1)從靜態(tài)存儲區(qū)域分配:內(nèi)存在程序編譯時就已經(jīng)分配好,這塊內(nèi)存在程序的整個運行期間都存在。速度快、不容易出錯,因為有系統(tǒng)會善后。例如全局變量,static變量等。在棧上分配:在執(zhí)行函數(shù)時,函數(shù)內(nèi)局部變量的存儲單元都在棧上創(chuàng)立,函數(shù)執(zhí)行完畢時這些存儲單元自動被釋放。棧內(nèi)存分配運算內(nèi)置于處理器的指令集中,效率很高,但是分配的內(nèi)存容量有限。從堆上分配:即動態(tài)內(nèi)存分配。程序在運行的時候用malloc或new大小的內(nèi)存,程序員自己負(fù)責(zé)在何時用free或delete一個CC+5局區(qū)、文字常量區(qū)、程序代碼區(qū)。3:簡述strcpy、sprintf與memcpy的區(qū)別三者主要有以下不同之處:操作對象不同,strcpy何種數(shù)據(jù)類型。執(zhí)行效率不同,memcpystrcpysprintf率最低。實現(xiàn)功能不同,strcpy是內(nèi)存塊間的拷貝。說明:strcpy、sprintf與memcpy是針對的對象不同,根據(jù)實際需求,來選擇適宜的函數(shù)實現(xiàn)拷貝功能。40x67a9
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 女性健康減肥飲食方案
- 醫(yī)院空調(diào)課程設(shè)計總結(jié)
- 商業(yè)品牌門店整裝設(shè)計方案
- 知識產(chǎn)權(quán)保護與管理實務(wù)操作
- 大熊貓研學(xué)課程設(shè)計
- 感統(tǒng)特訓(xùn)課程設(shè)計
- 2024-2030年中國汽車膜行業(yè)市場運營模式及未來發(fā)展策略分析報告
- 2024-2030年中國汽車改裝行業(yè)運營態(tài)勢及投資前景規(guī)劃分析報告
- 2024-2030年中國汽油機動力行業(yè)當(dāng)前經(jīng)濟形勢及投資建議研究報告
- 數(shù)據(jù)結(jié)構(gòu)智慧樹知到期末考試答案章節(jié)答案2024年中央財經(jīng)大學(xué)
- 走進(jìn)歌劇世界智慧樹知到期末考試答案章節(jié)答案2024年北京航空航天大學(xué)
- 三字經(jīng)英文版-趙彥春
- 婦科腫瘤微創(chuàng)手術(shù)
- 生態(tài)學(xué)概論智慧樹知到期末考試答案2024年
- DL-T 5148-2021水工建筑物水泥灌漿施工技術(shù)條件-PDF解密
- 高三班高考前心理疏導(dǎo)主題班會
- 500字作文標(biāo)準(zhǔn)稿紙A4打印模板-直接打印
- GB/T 22849-2024針織T恤衫
- 2024年國家電網(wǎng)招聘之通信類題庫及答案【名師系列】
- GB/Z 43684-2024納米技術(shù)光柵的描述、測量和尺寸質(zhì)量參數(shù)
評論
0/150
提交評論