面試基礎語言c

2021-10-19 13:00:56 字數 1750 閱讀 2514

1.c++與c的區別

2.如何讓乙個c++程式執行c的程式且不需要對函式進行名字重整

extern

"c";

3.指標與引用的區別

4.c++中間的指標傳遞和引用傳遞

5.形參與實參

6.三種傳遞

7.static

8.靜態變數的初始化

9.const

10.指標與const

11. mutable

12.extern

13.int轉字串以及字串轉int

istringstream is

("12");

//構造輸入字串流,流的內容初始化為「12」的字串 int i; is >> i;

14.深複製與淺複製

15.c++模板以及底層

16.c的struct與c++的struct

17.虛函式與純虛函式

virtual

void

demon()

=0;//純虛函式

virtual

void

base()

//虛函式

18.虛函式和inline

19. 類成員初始化方式?建構函式的執行順序 ?為什麼用成員初始化列表會快一些?

20. 建構函式為什麼不能為虛函式?析構函式為什麼要虛函式?

21. 析構函式的作用,如何起作用

22.析構與構造是否可以為虛函式

23.建構函式與析構函式呼叫順序。

24.類的兩種建立方式,以及單獨使用一種構造方式

25.什麼情況會自動生成預設構造涵樹

26.類的繼承

27.組合

28. 抽象基類為什麼不能建立物件

29. 類什麼時候會析構

30.友元函式

31.c++裡面的多型

32.繼承機制

33.組合和繼承

34.左值和右值

a = b+c;

// a為左值,b+c為右值,函式的返回值也是右值。

35.移動建構函式和拷貝函式

36. c語言的編譯鏈結過程

37.vector和list

list如果取第幾個的話就是強行遍歷

int size= a.

size()

;vec.

at(size-n)

;//這就是倒數第幾個

38.stl vector

39.stl迭代器

40.set與hash_set

41.hashmap與map

42.map和set

43.unordered_map(hash_map)和map的區別,hash_map如何解決衝突以及擴容

44.vector越界訪問下標,map越界訪問下標?vector刪除元素時會不會釋放空間

45.map與find()

46.list與deque

47.函式指標

int

(*pf)

(const

int&

,const

int&

)

上面的pf就是乙個函式指標,指向所有返回型別為int,並帶有兩個const int&引數的函式。注意*pf兩邊的括號是必須的。

48.c++的記憶體分配,以及記憶體區

49.堆和棧的區別

50.野指標

51.野指標和空懸指標。

C 面試之語言基礎(2)

define swap x,y x x y y x y x x y 巨集定義時引數用括號括起來,且表示式之間不要有空格 define ntbl table sizeof table sizeof table 0 入隊 將元素壓入棧a 出隊 判斷棧b是否為空 如果不為空,則將棧a中所有元素依次pop出...

C語言基礎 面試題

1 i 和 i 的區別 區別 i先加1再取值 i 先取值再加1 for迴圈為麼效果一樣 for 語句1 語句2 語句3 for 迴圈是在 執行語句 結束後,才執行 語句3 因此 i和i 的效果相同 for迴圈中 i和i 的u區別 當需要處理大量的資料時,i更優。i 由於是在使用當前值之後再 1,所以...

C語言面試

2 評價下面的 片斷 unsigned int zero 0 unsigned int compzero 0xffff 對於乙個 int型不是 16位的處理器為說,上面的 是不正確的。應編寫如下 unsigned int compzero 0 這一問題真正能揭露出應試者是否懂得處理器字長的重要性。在...