C++筆試面試題
C++筆試面試題
C++函數(shù)中值的傳遞方式有哪幾種?下面就由學(xué)習(xí)啦小編為大家介紹一下C++筆試面試題的文章,歡迎閱讀。
C++筆試面試題篇1
1 #include “filename.h”和#include 的區(qū)別?
答:#include “filename.h”表明該文件是用戶提供的頭文件,查找該文件時(shí)從當(dāng)前文件
目錄開(kāi)始;#include 表明這個(gè)文件是一個(gè)工程或標(biāo)準(zhǔn)頭文件,查找過(guò)程會(huì)檢查預(yù)定義的目錄。
2 頭文件的作用是什么?
答:一、通過(guò)頭文件來(lái)調(diào)用庫(kù)功能。在很多場(chǎng)合,源代碼不便(或不準(zhǔn))向用戶公布,只要向用戶提供頭文件和二進(jìn)制的庫(kù)即可。用戶只需要按照頭文件中的接口聲明來(lái)調(diào)用庫(kù)功能,而不必關(guān)心接口怎么實(shí)現(xiàn)的。編譯器會(huì)從庫(kù)中提取相應(yīng)的代碼。
二、頭文件能加強(qiáng)類(lèi)型安全檢查。如果某個(gè)接口被實(shí)現(xiàn)或被使用時(shí),其方式與頭文件中的聲明不一致,編譯器就會(huì)指出錯(cuò)誤,這一簡(jiǎn)單的規(guī)則能大大減輕程序員調(diào)試、改錯(cuò)的負(fù)擔(dān)
3 C++函數(shù)中值的傳遞方式有哪幾種?
答:C++函數(shù)的三種傳遞方式為:值傳遞、指針傳遞和引用傳遞。
4 內(nèi)存的分配方式的分配方式有幾種?
答:一、從靜態(tài)存儲(chǔ)區(qū)域分配。內(nèi)存在程序編譯的時(shí)候就已經(jīng)分配好,這塊內(nèi)存在程序的整個(gè)運(yùn)行期間都存在。例如全局變量。
二、在棧上創(chuàng)建。在執(zhí)行函數(shù)時(shí),函數(shù)內(nèi)局部變量的存儲(chǔ)單元都可以在棧上創(chuàng)建,函數(shù)執(zhí)行結(jié)束時(shí)這些存儲(chǔ)單元自動(dòng)被釋放。棧內(nèi)存分配運(yùn)算內(nèi)置于處理器的指令集中,效率很高,但是分配的內(nèi)存容量有限。
三、從堆上分配,亦稱動(dòng)態(tài)內(nèi)存分配。程序在運(yùn)行的時(shí)候用malloc或new申請(qǐng)任意多少的內(nèi)存,程序員自己負(fù)責(zé)在何時(shí)用free或delete釋放內(nèi)存。動(dòng)態(tài)內(nèi)存的生存期由我們決定,使用非常靈活,但問(wèn)題也最多。交換兩個(gè)數(shù),不用第三塊兒內(nèi)存!請(qǐng)問(wèn)怎么實(shí)現(xiàn)?現(xiàn)有12個(gè)小球,其中只有1個(gè)球與其它的球重量不同(即有11個(gè)球重量全相同),并且不知道這個(gè)跟其它球重量不同的球是重還是輕(跟其他11個(gè)重量相同的球相比而言),那么從這12個(gè)球中找出這個(gè)跟其它球重量不同的球.
C++筆試面試題篇2
1.英譯漢 ,關(guān)于ITU和CCITT的
2.漢譯英,關(guān)于VMware的
3.兩個(gè)有序數(shù)組的合并,寫(xiě)一個(gè)完整的程序
4.填空題,排序二叉樹(shù)節(jié)點(diǎn)的刪除,5個(gè)空
5.調(diào)試題,多線程文件的讀寫(xiě),編譯沒(méi)有錯(cuò)誤,請(qǐng)找出至少三個(gè)bug.
8.內(nèi)聯(lián)函數(shù)在編譯時(shí)是否做參數(shù)類(lèi)型檢查?
1,程序設(shè)計(jì)(可以用自然語(yǔ)言來(lái)描述,不編程):C/C++源代碼中,檢查花括弧(是"("與")","{"與"}")是否匹配,若不匹配,則輸出不匹配花括弧所在的行與列。
2,巧排數(shù)字,將1,2,...,19,20這20個(gè)數(shù)字排成一排,使得相鄰的兩個(gè)數(shù)字之和為一個(gè)素?cái)?shù),且首尾兩數(shù)字之和也為一個(gè)素?cái)?shù)。編程打印出所有的排法。
3,打印一個(gè)N*N的方陣,N為每邊字符的個(gè)數(shù)( 3〈N〈20 ),要求最外層為"X",第二層為"Y",從第三層起每層依次打印數(shù)字0,1,2,3,...
例子:當(dāng)N =5,打印出下面的圖形:
X X X X X
X Y Y Y X
X Y 0 Y X
X Y Y Y X
X X X X X
C++筆試面試題篇3
1. 三個(gè)float:a,b,c 問(wèn)值
(a+b)+c==(b+a)+c
(a+b)+c==(a+c)+b
2. 把一個(gè)鏈表反向填空 (重復(fù))
4. y1(n)=x(2n), y2(n)=x(n/2),問(wèn):
如果y1為周期函數(shù),那么x是否為周期函數(shù)
如果x為周期函數(shù),那么y1是否為周期函數(shù)
如果y2為周期函數(shù),那么x是否為周期函數(shù)
如果x為周期函數(shù),那么y2是否為周期函數(shù)
4. 某個(gè)程序在一個(gè)嵌入式系統(tǒng)(200M的CPU,50M的SDRAM)中已經(jīng)最化了,換到另一個(gè)系統(tǒng)
(300M的CPU,50M的SDRAM)中運(yùn)行,還需要優(yōu)化嗎?
5. x^4+a*x^3+x^2+c*x+d最少需要作幾次乘法