freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

c常見(jiàn)筆試題及答案-閱讀頁(yè)

2025-07-09 18:50本頁(yè)面
  

【正文】 NULL。str, 100)。printf(str)。strcpy(str, “hello”)。 if(str != NULL){strcpy(str, “world”)。}}請(qǐng)問(wèn)運(yùn)行Test函數(shù)會(huì)有什么樣的結(jié)果?五、編寫(xiě)strcpy函數(shù)(10分)已知strcpy函數(shù)的原型是char *strcpy(char *strDest, const char *strSrc)。(1)不調(diào)用C++/C的字符串庫(kù)函數(shù),請(qǐng)編寫(xiě)函數(shù) strcpychar *strcpy(char *strDest,const char *strSrc){int n=0。for(int i=0。i++) {strDest=strSrc[i]。}return *strDest。 六、編寫(xiě)類String的構(gòu)造函數(shù)、析構(gòu)函數(shù)和賦值函數(shù)(25分)已知類String的原型為:class String{public:String(const char *str = NULL)。other)。 // 析構(gòu)函數(shù)String amp。other)。// 用于保存字符串}。//答案一并給出一、請(qǐng)?zhí)顚?xiě)B(tài)OOL , float, 指針變量 與“零值”比較的 if 語(yǔ)句。(3分)標(biāo)準(zhǔn)答案:if ( flag )if ( !flag )如下寫(xiě)法均屬不良風(fēng)格,不得分。(4分)標(biāo)準(zhǔn)答案示例:const float EPSINON = 。amp。如下是錯(cuò)誤的寫(xiě)法,不得分。(3分)標(biāo)準(zhǔn)答案:if (p == NULL)if (p != NULL)如下寫(xiě)法均屬不良風(fēng)格,不得分。char *p = str 。請(qǐng)計(jì)算sizeof (str ) = 6 (2分) sizeof ( p ) = 4 (2分)sizeof ( n ) = 4 (2分)void Func ( char str[100]){請(qǐng)計(jì)算sizeof( str ) = 4 (2分)}void *p = malloc( 100 )。#i nclude 和 #i nclude “” 有什么區(qū)別?(5分)答:對(duì)于#i nclude ,編譯器從標(biāo)準(zhǔn)庫(kù)路徑開(kāi)始搜索 對(duì)于#i nclude “” ,編譯器從用戶的工作路徑開(kāi)始搜索 const 有什么用途?(請(qǐng)至少說(shuō)明兩種)(5分)答:(1)可以定義 const 常量(2)const可以修飾函數(shù)的參數(shù)、返回值,甚至函數(shù)的定義體。在C++ 程序中調(diào)用被 C編譯器編譯后的函數(shù),為什么要加 extern “C”? (5分)答:C++語(yǔ)言支持函數(shù)重載,C語(yǔ)言不支持函數(shù)重載。假設(shè)某個(gè)函數(shù)的原型為: void foo(int x, int y)。C++提供了C連接交換指定符號(hào)extern“C”來(lái)解決名字匹配問(wèn)題。 iN。elseDoOtherthing()。 iN。}else{for (i=0。 i++)DoOtherthing()。優(yōu)點(diǎn):循環(huán)的效率高缺點(diǎn):程序不簡(jiǎn)潔四、有關(guān)內(nèi)存的思考題(每小題5分,共20分)void GetMemory(char *p){p = (char *)malloc(100)。GetMemory(str)。printf(str)。因?yàn)镚etMemory并不能傳遞動(dòng)態(tài)內(nèi)存,Test函數(shù)中的 str一直都是 NULL。將使程序崩潰。return p。str = GetMemory()。}請(qǐng)問(wèn)運(yùn)行Test函數(shù)會(huì)有什么樣的結(jié)果?答:可能是亂碼。void GetMemory2(char **p, int num){*p = (char *)malloc(num)。GetMemory(amp。strcpy(str, hello)。}請(qǐng)問(wèn)運(yùn)行Test函數(shù)會(huì)有什么樣的結(jié)果?答:(1)能夠輸出hello(2)內(nèi)存泄漏void Test(void){char *str = (char *) malloc(100)。free(str)。printf(str)。因?yàn)閒ree(str)。28 下列程序運(yùn)行時(shí)會(huì)崩潰,請(qǐng)找出錯(cuò)誤并改正,并且說(shuō)明原因。//指針沒(méi)有初始化://NewNodeleft=NULL。#i nclude #i nclude typedef struct TNode{TNode* left。int value。TNode* root=NULL。int main(){append(63)。append(32)。append(96)。append(17)。}void append(int N){TNode* NewNode=(TNode *)malloc(sizeof(TNode))。NewNodeleft=NULL。if(root==NULL){root=NewNode。}else{TNode* temp。while((N=tempvalue amp。 templeft!=NULL) || (Ntempvalue amp。 tempright!=NULL)){while(N=tempvalue amp。 templeft!=NULL)temp=templeft。amp。}if(N=tempvalue)templeft=NewNode。return。但你也可能單獨(dú)調(diào)用 API。3,特別是 C++ 中的圖形處理,它和語(yǔ)言的圖形有很大的區(qū)別。C 語(yǔ)言標(biāo)準(zhǔn)中不包括圖形處理。4,C 和 C++ 中都有結(jié)構(gòu)的概念,但是在 C 語(yǔ)言中結(jié)構(gòu)只有成員變量,而沒(méi)成員方法,而在 C++ 中結(jié)構(gòu)中,它可以有自己的成員變量和成員函數(shù)。 5,C 語(yǔ)言可以寫(xiě)很多方面的程序,但是 C++ 可以寫(xiě)得更多更好,C++ 可以寫(xiě)基于DOSr程序,寫(xiě) DLL,寫(xiě)控件,寫(xiě)系統(tǒng)。 7,C++ 中的 IDE 很智能,和 VB 一樣,有的功能可能比VB還強(qiáng)。有很多可用的工具如加入 MFC 中的類的時(shí)候,加入變量的時(shí)候等等。 10,調(diào)試功能強(qiáng)大,并且方法多樣。編譯器可以對(duì)前者進(jìn)行類型安全檢查,而對(duì)后者只能進(jìn)行字符替換,沒(méi)有類型安全檢查。有些集成化工具可以對(duì)const常量進(jìn)行調(diào)試, 但不能對(duì)宏量進(jìn)行調(diào)試。2 引用在定義時(shí)必須初始化,而指針在定義時(shí)不初始化。4 引用在初始化后不可以改變引用關(guān)系,而指針可以隨時(shí)指向其他對(duì)象(非const指針)。inline與函數(shù)的定義體放在一起,使該函數(shù)稱為內(nèi)聯(lián)。虛函數(shù)的特點(diǎn):如果希望派生類能夠重新定義基類的方法,則在基類中將該方法定義為虛方法,這樣可以啟用動(dòng)態(tài)聯(lián)編。內(nèi)聯(lián)函數(shù)體的代碼不能過(guò)長(zhǎng),因?yàn)閮?nèi)聯(lián)函數(shù)省去調(diào)用函數(shù)的時(shí)間是以代碼膨脹為代價(jià)的。一個(gè)函數(shù)能否即是虛函數(shù)又是內(nèi)聯(lián)函數(shù)?8.以下關(guān)鍵字的含義與用法:extern,extern “C”,static,explicit,register,undef,ifndef9.什么是函數(shù)重載與覆蓋?為什么C不支持函數(shù)重載?為什么C++能支持函數(shù)重載?10.VC中,編譯工具條內(nèi)的Debug與Release選項(xiàng)是什么含義?11.編寫(xiě)my_memcpy函數(shù),實(shí)現(xiàn)與庫(kù)函數(shù)memcpy類似的功能,不能使用任何庫(kù)函數(shù);void* mymemcpy(void* pvTo, const char* pvFrom, size_t size){assert((dest != NULL) amp。 (src != NULL))。byte* psFrom = (byte*)pvFrom。}return pvTo。amp。while((*strdest++ = *strsrc++) != NULL)return address。程序員可以把a(bǔ)ssert看成一個(gè)在任何系統(tǒng)狀態(tài)下都可以安全使用的無(wú)害測(cè)試手段。而其他類型如int作為參數(shù)時(shí),由于函數(shù)參數(shù)值實(shí)質(zhì)上是實(shí)參的一份拷貝,被調(diào)函數(shù)內(nèi)部對(duì)形參的改變并不影響實(shí)參的值。  2.寫(xiě)一個(gè)函數(shù),將其中的\t都轉(zhuǎn)換成4個(gè)空格?! ?.如何定義和實(shí)現(xiàn)一個(gè)類的成員函數(shù)為回調(diào)函數(shù)?  5.C++里面是不是所有的動(dòng)作都是main()引起的?如果不是,請(qǐng)舉例?!  const int* a = amp。  B const* int a = amp?!  const int* const a = amp?!  int const* const a = amp?! ?.內(nèi)聯(lián)函數(shù)在編譯時(shí)是否做參數(shù)類型檢查?  void g(base amp?!   void main(){   son s?! ?return。msg, NULL, 0, 0 )) != 0){ if (bRet == 1){// handle the error and possibly exit}else{TranslateMessage(amp。 DispatchMessage(amp。 }} MSRA Interview Written Exam(December 2003,Time: Hours) 1寫(xiě)出下列算法的時(shí)間復(fù)雜度。 struct mybitfields { unsigned short a : 4。 unsigned short c : 7。 =2。 =0。test)。 } 3寫(xiě)出下列程序的運(yùn)行結(jié)果。 couti * 1。 int a。 int c。 a=b。 a=c。 //Start F1,F2 in parallel F1()。 printf(a=%d\n,a)。 6對(duì) 16 Bits colors的處理,要求: (1)Byte轉(zhuǎn)換為RGB時(shí),保留高6bits; (2)RGB轉(zhuǎn)換為Byte時(shí),第3位置零。要求: (1)增加一個(gè)元素; (2)獲得頭元素; (3)彈出頭元素(獲得值并刪除)。 附加題(只有在完成以上題目后,才獲準(zhǔn)回答) In C++, what does explicit mean? what does protected mean? 函數(shù),如果子類覆蓋它的函數(shù)不加virtual ,也能實(shí)現(xiàn)多態(tài)? virtual修飾符會(huì)被隱形繼承的。virtual可加可不加。同一個(gè)函數(shù)只存在一個(gè)實(shí)體(inline除外)。在子類的空間里,有父類的私有變量。 ,將其逆序后輸出。 void main() { char a[50]。 int i=0,j。 (a,50,39。)。istrlen(a)/2。 a[i]=a[j]。 } coutaendl。 cinstr。 coutstr。 內(nèi)存管理是操作系統(tǒng)中的重要部分,兩三句話恐怕誰(shuí)也說(shuō)不清楚吧~~ 我先說(shuō)個(gè)大概,希望能夠拋磚引玉吧 當(dāng)程序運(yùn)行時(shí)需要從內(nèi)存中讀出這段程序的代碼。把哪些不常用的程序片斷就放入虛擬內(nèi)存,當(dāng)需要用到它的時(shí)候在load入主存(物理內(nèi)存)中。內(nèi)存管理還有另外一件事需要做:計(jì)算程序片段在主存中的物理位置,以便CPU調(diào)度。現(xiàn)在常用段頁(yè)式管理塊式管理:把主存分為一大塊、一大塊的,當(dāng)所需的程序片斷不在主存時(shí)就分配一塊主存空間,把程序片段load入主存,就算所需的程序片段只有幾個(gè)字節(jié)也只能把這一塊分配給它。頁(yè)式管理:把主存分為一頁(yè)一頁(yè)的,每一頁(yè)的空間要比一塊一塊的空間小很多,顯然這種方法的空間利用率要比塊式管理高很多。一個(gè)程序片斷可能會(huì)被分為幾十段,這樣很多時(shí)間就會(huì)被浪費(fèi)在計(jì)算每一段的物理地址上(計(jì)算機(jī)最耗時(shí)間的大家都知道是I/O吧)。把主存分為若干頁(yè),每一頁(yè)又分為若干段。各種內(nèi)存管理都有它自己的方法來(lái)計(jì)算出程序片斷在主存中的物理地址,其實(shí)都很相似。無(wú)論哪一本操作系統(tǒng)書(shū)上都有詳細(xì)的講解 4. include define SQR(X) X*X int main(int argc, char* argv[]) { int a = 10。 int m = 1。 printf(%d\n,a)。 } 這道題目的結(jié)果是什么啊? define 只是定義而已,在編擇時(shí)只是簡(jiǎn)單代換X*X而已,并不經(jīng)過(guò)算術(shù)法則的 a /= (k+m)*(k+m)/(k+m)*(k+m)。 =a = a/9。是錯(cuò)的 SQR(k+m)/SQR(k+m)= k+m*k+m/k+m*k+m正確 5. const 符號(hào)常量; (1)const char *p (2)char const *p (3)char * const p 說(shuō)明上面三種描述的區(qū)別; 如果const位于星號(hào)的左側(cè),則const就是用來(lái)修飾指針?biāo)赶虻淖兞?,即指針指向?yàn)槌A浚? 如果const位于星號(hào)的右側(cè),const就是修飾指針本身,即指針本身是常量。 char c1=39。 char c2=39。 p=amp。//ok p=amp。//ok *p=c1
點(diǎn)擊復(fù)制文檔內(nèi)容
范文總結(jié)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1