高質量C++/C程式設計指南(附錄B :C++/C試題) (轉)
:C++/C試題
本試題僅用於考查C++/C員的基本技能。內容限於C++/C常用語法,不涉及資料結構、演算法以及深奧的語法。考試成績能反映出考生的程式設計質量以及對C++/C的理解程度,但不能反映考生的智力和開發能力。
筆試時間90分鐘。請考生認真答題,切勿輕視。
:namespace prefix = o ns = "urn:schemas--com::office" />
一、請填寫BOOL , float, 指標變數 與“零值”比較的 if 語句。(10分)
提示:這裡“零值”可以是0, 0.0 , FALSE或者“空指標”。例如 int 變數 n 與“零值”比較的 if 語句為:
if ( n == 0 )
if ( n != 0 )
以此類推。
請寫出 BOOL flag 與“零值”比較的 if 語句:
請寫出 float x 與“零值”比較的 if 語句:
請寫出 char *p 與“零值”比較的 if 語句:
二、以下為 NT下的32位C++程式,請計算sizeof的值(10分)
char str[] = “Hello” ;
char *p = str ;
int n = 10;
請計算
sizeof (str ) =
sizeof ( p ) =
sizeof ( n ) =
void Func ( char str[100])
{
請計算
sizeof( str ) =
}
void *p = malloc( 100 );
請計算
sizeof ( p ) =
三、簡答題(25分)
1、頭中的 ifndef/define/endif 幹什麼用?
2、#include
3、const 有什麼用途?(請至少說明兩種)
4、在C++ 程式中被 C編譯後的,為什麼要加 extern “C”宣告?
5、請簡述以下兩個for迴圈的優缺點
// 第一個
for (i=0; i { if (condition) DoSomething(); else DoOtherthing(); } // 第二個 if (condition) { for (i=0; i DoSomething(); } else { for (i=0; i DoOtherthing(); } 優點: 缺點: 優點: 缺點: 四、有關的思考題(20分) void GetMemory(char *p) { p = (char *)malloc(100); } void Test(void) { char *str = NULL; GetMemory(str); strcpy(str, "hello world"); printf(str); } 請問執行Test函式會有什麼樣的結果? 答: char *GetMemory(void) { char p[] = "hello world"; return p; } void Test(void) { char *str = NULL; str = GetMemory(); printf(str); } 請問執行Test函式會有什麼樣的結果? 答: Void GetMemory2(char **p, int num) { *p = (char *)malloc(num); } void Test(void) { char *str = NULL; GetMemory(&str, 100); strcpy(str, "hello"); printf(str); } 請問執行Test函式會有什麼樣的結果? 答: void Test(void) { char *str = (char *) malloc(100); strcpy(str, “hello”); free(str); if(str != NULL) { strcpy(str, “world”); printf(str); } } 請問執行Test函式會有什麼樣的結果? 答: 五、編寫strcpy函式(10分) 已知strcpy函式的原型是 char *strcpy(char *strDest, const char *strSrc); 其中strDest是目的字串,strSrc是源字串。 (1)不呼叫C++/C的字串庫函式,請編寫函式 strcpy (2)strcpy能把strSrc的內容複製到strDest,為什麼還要char * 型別的返回值? 六、編寫類String的建構函式、解構函式和賦值函式(25分) 已知類String的原型為: class String { public: String(const char *str = NULL); // 普通建構函式 String(const String &other); // 複製建構函式 ~ String(void); // 解構函式 String & operate =(const String &other); // 賦值函式 private: char *m_data; // 用於儲存字串 }; 請編寫String的上述4個函式。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752043/viewspace-991860/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 高質量C++/C程式設計指南(林銳)C++C程式程式設計
- 高質量C/C++程式設計指南總結(八)—— C++高階特性C++程式設計
- 高質量C/C++程式設計指南總結(二)—— 檔案版式C++程式設計
- 高質量C/C++程式設計指南總結(三)—— 命名規則C++程式設計
- C++高階程式設計pdfC++程式設計
- C++入門程式設計----C++運算子(8)C++程式設計
- C++核心程式設計C++程式設計
- c/c++ 面試題C++面試題
- c/c++面試題C++面試題
- C++ 程式設計入門指南:深入瞭解 C++ 語言及其應用領域C++程式設計
- C++程式設計實現C++程式設計
- C++ 提高程式設計C++程式設計
- C++提高程式設計C++程式設計
- Google C++ 程式設計風格指南:命名約定GoC++程式設計
- c++筆試題C++筆試
- c++面試題C++面試題
- 1007:計算(a+b)×c的值(C C++)C++
- C/C++程式設計知識:C++ 快速隨機數生成器C++程式設計隨機
- C++高階應用_設計模式C++設計模式
- C++ 物件導向高階設計C++物件
- python和C++ NOI程式設計題解1.1PythonC++程式設計
- C++暴力指南C++
- 物件導向程式設計C++物件程式設計C++
- C++ & Intel MKL 混合程式設計C++Intel程式設計
- C++核心程式設計筆記C++程式設計筆記
- c++簡單程式設計-3C++程式設計
- C++提高程式設計-模板C++程式設計
- C++提高程式設計-STLC++程式設計
- QML之C++混合程式設計C++程式設計
- 大二上 C++高階程式設計筆記(1) 棧和c++對c的補充 20240908C++程式設計筆記
- 【C++】C++之型別轉換C++型別
- c++面試題1C++面試題
- C++:與C混合程式設計 CMake undefined reference toC++程式設計Undefined
- 【混合程式設計】C/C++呼叫Fortran的DLL程式設計C++
- Windows 程式設計簡介從C/C++到Windows程式設計Windows程式設計C++
- XCode 中 Swift / Objective-C / C / C++ 混合程式設計XCodeSwiftObjectC++程式設計
- c/c++設計模式----命令模式C++設計模式
- c/c++設計模式---策略模式C++設計模式
- C++ 核心指南 —— 效能C++