經典筆試題

2021-06-17 15:18:01 字數 1063 閱讀 3886

1. 關鍵字static的作用是什麼?

在c語言中,關鍵字static有三個明顯的作用:

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

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

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

static全域性變數與普通的全域性變數有什麼區別:static全域性變數只初始化一次,防止在其他檔案單元中被引用;

static區域性變數和普通區域性變數有什麼區別:static區域性變數只被初始化一次,下一次依據上一次結果值;

static函式與普通函式有什麼區別:static函式在記憶體中只有乙份,普通函式在每個被呼叫中維持乙份拷貝

2、程式的區域性變數存在於(堆疊)中,全域性變數存在於(靜態區 )中,動態申請資料存在於( 堆)中

2.c語言的const的含義是什麼?並給出三個不同的例子。

const是唯讀的意思,它限定乙個變數不允許被改變

3.c語言的volatile的含義是什麼?

由於訪問暫存器的速度要快過ram,所以編譯器一般都會作減少訪問外部ram的優化,但有可能會讀髒資料。當要求使用volatile 宣告的變數的值的時候,系統總是重新從它所在的記憶體讀取資料,即使它前面的指令剛剛從該處讀取過資料。而且讀取的資料立刻被儲存。精確地說就是,優化器在用到這個變數時必須每次都小心地重新讀取這個變數的值,而不是使用儲存在暫存器裡的備份。

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

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

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

4.iso的七層模型是什麼?tcp/udp是屬於哪一層?tcp/udp有何優缺點?

應用層/表示層/會話層/運輸層/網路層/物理鏈路層/物理層

tcp /udp屬於運輸層

tcp: 提供穩定的傳輸服務,有流量控制,缺點是包頭大,冗餘性不好

udp: 不提供穩定的服務,包頭小,開銷小 

經典筆試題筆記

1.有無序的實數列v n 要求求裡面大小相鄰的實數的差的最大值,關鍵是要求線性空間和線性時間 方法 桶排序 由抽屜原理知最在差值maxsub有如下關係 所以,當所桶大小設為 然後就成有序的了,接下來就只要比較相鄰,取最優就可以了。2.13個球乙個天平,現知道只有乙個和其它的重量不同,問怎樣稱才能用三...

經典筆試題123

1.實現對乙個8bit位資料 unsigned char 型別 的指定位 例如第n位 的置0或置1操作,並保持其他位不變。函式原型 void bit set unsigned char p data,unsigned char position,int flag 函式引數說明 p data是指定的原...

筆試面試 經典筆試題整理

以下內容全部整理自網路。把整數關鍵碼k雜湊到n個槽列表,最好的雜湊函式是 h k k rand n mod n,rand n 返回0到n 1的整數 初始資料集的排列順序對演算法的效能無影響的是 堆排序 堆排序 最優時間複雜度o nlogn 最差時間複雜度o nlogn 平均時間複雜度o nlogn ...