當前位置:學識中文吧 > 簡歷 > 簡歷資料 > 面試試題 > c++面試題
手機版

c++面試題

來源:學識中文吧 閱讀:2.06W 次

填寫bool , float, 指標變數 與“零值”比較的 if 語句。

c++面試題

標頭檔案中的 ifndef/define/endif 幹什麼用?

#include 和 #include “filename.h” 有什麼區別?

const 有什麼用途?(請至少說明兩種)

在c++ 程式中呼叫被 c編譯器編譯後的函式,為什麼要加 extern “c”宣告?

const 與 #define有什麼不同

答案: 1. const 常量有資料型別,而巨集沒有資料型別。編譯器可以對const 常量進行型別檢查,而對巨集只進行字元替換沒有型別檢查。

2. 有些編譯器可以對const常量進行除錯,但不能對巨集常量進行除錯

3. const 可以用來修飾函式引數、函式返回值,c++還可以用來修飾函式,定義內中某個成員函式為常量函式

寫一個“標準”巨集min,這個巨集輸入兩個引數並返回較小的一個。

前處理器標識#error的目的是什麼?

嵌入式系統中經常要用到無限迴圈,你怎麼樣用c編寫無窮迴圈呢?

關鍵字static的作用是什麼?

這個簡單的問題很少有人能回答完全。在c語言中,關鍵字static有三個明顯的作用:

1). 在函式體,一個被宣告為靜態的變數在這一函式被呼叫過程中維持其值不變。

2). 在模組內(但在函式體外),一個被宣告為靜態的變數可以被模組內所用函式訪問,但不能被模組外其它函式訪問。它是一個本地的全域性變數。

3). 在模組內,一個被宣告為靜態的函式只可被這一模組內的其它函式呼叫。那就是,這個函式被限制在宣告它的模組的本地範圍內使用。

大多數應試者能正確回答第一部分,一部分能正確回答第二部分,同是很少的人能懂得第三部分。這是一個應試者的嚴重的缺點,因為他顯然不懂得本地化資料和程式碼範圍的好處和重要性。

關鍵字volatile有什麼含意 並給出三個不同的例子。

一個定義為volatile的變數是說這變數可能會被意想不到地改變,這樣,編譯器就不會去假設這個變數的值了。精確地說就是,優化器在用到這個變數時必須每次都小心地重新讀取這個變數的值,而不是使用儲存在暫存器裡的備份。下面是volatile變數的幾個例子:

1). 並行裝置的硬體暫存器(如:狀態暫存器)

2). 一箇中斷服務子程式中會訪問到的非自動變數(non-automatic variables)

3). 多執行緒應用中被幾個任務共享的變數

回答不出這個問題的人是不會被僱傭的。我認為這是區分c程式設計師和嵌入式系統程式設計師的最基本的問題。嵌入式系統程式設計師經常同硬體、中斷、rtos等等打交道,所用這些都要求volatile變數。不懂得volatile內容將會帶來災難。

請問c++的類和c裡面的struct有什麼區別?

請講一講解構函式和虛擬函式的用法和作用?

全域性變數和區域性變數有什麼區別?實怎麼實現的?作業系統和編譯器是怎麼知道的?

本文連結:https://www.xszwb.com/zh-tw/jlzlfanwen/shiti/kxyne6.html

Copyright © 2024. 學識中文吧 All right reserved.

文字美圖素材,版權屬於原作者。部分文章內容由網友提供推送時因種種原因未能與原作者聯絡上,若涉及版權問題,敬請原作者聯絡我們,立即處理。