當前位置:概念範文網>求職簡歷>筆試題目>

C網路遊戲程式設計師筆試題

筆試題目 閱讀(1.29W)

C++由於過度的複雜性,以及與unix的文化相牴觸,在unix/linux領域受到很多著名人士(比如Linux之父linus torvalds與著名黑客Eric S. Raymond)的強烈批評與抵制。下面就由本站小編為大家介紹一下C++網路遊戲程式設計師筆試題的文章,歡迎閱讀。

C網路遊戲程式設計師筆試題

C++網路遊戲程式設計師筆試題篇1

1 請寫程式碼列印100之內的素數,講求效率(請做你的解法的效率分析)

2 求m,n的最大公約數

3 輸入10個字串,打印出其中重複的字串以及重複的次數

4 請畫圖例(UML最好),給出windows下的檔案目錄的設計模式

5 用OO表示狼吃羊羊吃草

問答題:

1 什麼是subversion?它與vss,cvs的區別在哪?或者有什麼優勢?

2 什麼是wiki,關於程式專案的wiki你使用過哪些?wiki對你有什麼幫助嗎?wiki與程式文擋的差別在哪?

3 什麼是tdd?你使用過嗎?tdd的關鍵在哪?跟傳統的單元測試相比,有什麼優越性?

4 什麼是單元測試?你用過哪些單元測試工具?他們的區別和好處各有哪些?你主要傾向於哪一種?

5 什麼是程式設計規範?你傾向於什麼樣的規範?他的好處在哪?

6 什麼是mfc?你經常使用那些mfc類?那麼為什麼很多人不主張使用mfc?

7 什麼是標頭檔案依賴?你注意過這些問題嗎?你注意過編譯的時間嗎?你怎麼改進編譯時間?

8 什麼是面向物件?你在哪些方面用過面向物件?帶來了什麼好處?又有什麼弊端?

9 什麼是介面程式設計,他帶來了什麼好處?適用於什麼地方?

10 什麼是設計模式?使用設計模式有什麼好處?列舉你使用過的設計模式

後面還有一道文學詩歌,一道歷史常識題以及三道邏輯推理題。

C++網路遊戲程式設計師筆試題篇2

1. “引用”與指標的區別是什麼?

指標通過某個指標變數指向一個物件後,對它所指向的變數間接操作。程式中使用指標,程式的可讀性差;而引用本身就是目標變數的別名,對引用的操作就是對目標變數的操作。此外,就是上面提到的對函式傳ref和pointer的區別。

2. 什麼時候需要“引用”?

流操作符<<和>>、賦值操作符=的返回值、拷貝建構函式的引數、賦值操作符=的引數、其它情況都推薦使用引用。

C++網路遊戲程式設計師筆試題篇3

1. New delete 與malloc free 的聯絡與區別?

答案:都是在堆(heap)上進行動態的記憶體操作。用malloc函式需要指定記憶體分配的位元組數並且不能初始化物件,new 會自動呼叫物件的建構函式。delete 會呼叫物件的destructor,而free 不會呼叫物件的destructor.

2. #define DOUBLE(x) x+x ,i = 5*DOUBLE(5); i 是多少?

答案:i 為30.

3. 有哪幾種情況只能用intialization list 而不能用assignment?

答案:當類中含有const、reference 成員變數;基類的建構函式都需要初始化表。

4. C++是不是型別安全的?

答案:不是。兩個不同型別的指標之間可以強制轉換(用reinterpret cast)。C#是型別安全的。

5. main 函式執行以前,還會執行什麼程式碼?

答案:全域性物件的建構函式會在main 函式之前執行。

6. 描述記憶體分配方式以及它們的區別?

1) 從靜態儲存區域分配。記憶體在程式編譯的時候就已經分配好,這塊記憶體在程式的整個執行期間都存在。例如全域性變數,static 變數。

2) 在棧上建立。在執行函式時,函式內區域性變數的儲存單元都可以在棧上建立,函式執行結束時這些儲存單元自動被釋放。棧記憶體分配運算內置於處理器的指令集。

3) 從堆上分配,亦稱動態記憶體分配。程式在執行的時候用malloc 或new 申請任意多少的記憶體,程式設計師自己負責在何時用free 或delete 釋放記憶體。動態記憶體的生存期由程式設計師決定,使用非常靈活,但問題也最多。

ct 和 class 的區別

答案:struct 的成員預設是公有的,而類的成員預設是私有的。struct 和 class 在其他方面是功能相當的。

從感情上講,大多數的開發者感到類和結構有很大的差別。感覺上結構僅僅象一堆缺乏封裝和功能的開放的記憶體位,而類就象活的並且可靠的社會成員,它有智慧服務,有牢固的封裝屏障和一個良好定義的介面。既然大多數人都這麼認為,那麼只有在你的類有很少的方法並且有公有資料(這種事情在良好設計的系統中是存在的!)時,你也許應該使用 struct 關鍵字,否則,你應該使用 class 關鍵字。

8.當一個類A 中沒有生命任何成員變數與成員函式,這時sizeof(A)的值是多少,如果不是零,請解釋一下編譯器為什麼沒有讓它為零。(Autodesk)

答案:肯定不是零。舉個反例,如果是零的話,宣告一個class A[10]物件陣列,而每一個物件佔用的空間是零,這時就沒辦法區分A[0],A[1]…了。

9. 在8086 彙編下,邏輯地址和實體地址是怎樣轉換的?(Intel)

答案:通用暫存器給出的地址,是段內偏移地址,相應段暫存器地址*10H+通用暫存器內地址,就得到了真正要訪問的地址。