程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> C++程序面試筆跡

C++程序面試筆跡

編輯:C++入門知識

1填空  1)32位C/C++程序  sizeof(int)= 4 。  sizeof(long)= 4 。    2)x86兼容機 請給出函數結果htonl(0x03) =  。   3)  堆棧是針對?      默認情況堆是屬於?      CPU調度時針對?      答案 : 進程。    4)請給出表達式結果5《2= 20。    5)請給出以下程序結果    #define NUMBER 1*2+3*4     int val = 1 + 3 * NUMBER * 2;    則 val = 1+3*1*2+3*4*2=  ?    2 程序題    1)請寫一個函數重載的例子。 void A(int i); void A(int i,float f);    2)請寫一個C++多態的例子。 class A { public:     A() {};     virtual ~A() {};       virtual void Print() { cout << "This is A!" << endl; }; };   class B : public A { public:     B() {};     ~B() {cout << "Output from the destructor of class B!" << endl;};        void Print() { cout << "This is B!" << endl; }; }; 然後再main入口函數調用如下: A *pTest = new B; pTest->Print(); delete pTest; 輸出結果是: This is B! Output from the destructor of class B! 如果將A類中析構函數前virtual去掉,輸出結果則是:This is B! 也就是說類B的析構函數沒有被調用.    3)請寫一個代碼片段完成以下功能,平台不限。     動態加載(My.dll或者My.so)調用 My 的導出函數 extern “ C” , float Function(fIoat , float)。  3 簡述題  1)請簡述stdcall cdcel pasecal的區別     1、_stdcall是Pascal程序的缺省調用方式,通常用於Win32 Api中,函數采用從右到左的壓棧方式,自己在退出時清空堆棧。VC將函數編譯後會在函數名前面加上下    劃線前綴,在函數名後加上"@"和參數的字節數。 int f(void *p) -->> _f@4(在外部匯編語言裡可以用這個名字引用這個函數)     2、C調用約定(即用__cdecl關鍵字說明)(The C default calling convention)按從右至左的順序壓參數入棧,由調用者把參數彈出棧。對於傳送參數的內存    棧是由調用者來維護的(正因為如此,實現可變參數 vararg的函數(如printf)只能使用該調用約定)。另外,在函數名修飾約定方面也有所不同。 _cdecl是C和C++    程序的缺省調用方式。每一個調用它的函數都包含清空堆棧的代碼,所以產生的可執行文件大小會比調用_stdcall函數的大。函 數采用從右到左的壓棧方式。VC將函數    編譯後會在函數名前面加上下劃線前綴。    2)請簡述C/C++的整個編譯流程     編譯、鏈接    3)請簡述vector list map的基本功能以及注意事項    vector:支持動態數組,可通過標准數組來訪問其元素    list類支持雙向線性列表。注:list不能像vector那樣支持隨機訪問,只支持順序訪問,由於list是雙向的,所以可以從前向後也可以從後向前訪問列表。    map類支持關聯式容器。一個值映射到唯一一個關鍵字。可以通過關鍵字來查找值。注:map容器中的關鍵字是唯一的,不可以重復使用。 map類支持關聯式容器。一個值映射到唯一一個關鍵字map類支持關聯式容器。一個值映射到唯一一個關鍵字map類支持關聯式容器。一個值映射到唯一一個關鍵字map類支持關聯式容器。一個值映射到唯一一個關鍵字  4)請簡述某平台各種進程間通訊以及優缺點  5)請簡述C和C++的區別   C面向過程編程, C++面向對象編程  

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved