西山居 筆試題

2021-05-23 15:19:02 字數 2365 閱讀 3759

1.

char sztest=」12345/t/n/0abcd/0」; 則 strlen(sztest) 值為 __7__, sizeof(sztest) 值為 _14__ 2.

int antest[5][10]; int n1= &antest[4]- &antest[10], n2= &antest[3][1]- &antest[1][3]; 則 n1和n2 的值為 _-6,18___. 3.

char sznum=」123456789」; int n= *(short*)(sznum+ 4)- *(short*)(sznum); 則 n 的值為 __1028___. 4.

stl 中二分查詢演算法函式名稱為 ____, 穩定排序演算法函式名稱為 _____, 部分排序演算法函式名稱為 ____. 5.

stl 中 map 通常是用資料結構中的 _紅黑樹__ 實現。

8. 要增加乙個類到某種型別的隱式轉投可通過過載 ____ 操作符實現。

隱式型別轉換運算子只是乙個樣子奇怪的成員函式:operator 關鍵字,其後跟乙個型別符號。你不用定義函式的返回型別,因為返回型別就是這個函式的名字。例如為了允許rational(有理數)類隱式地轉換為 double型別(在用有理數進行混合型別運算時,可能有用),你可以如此宣告rational類:

class rational ; // double型別

在下面這種情況下,這個函式會被自動呼叫:

rational r(1, 2); // r 的值是1/2

double d = 0.5 * r; // 轉換 r 到double,

// 然後做乘法

11. 填入下面缺失的語句:

unsign ed int strlen( const char* pstr )

} 1、 靜態儲存區,是在程式編譯時就已經分配好的,在整個執行期間都存在,如全域性變數、常量。

3.全域性區(靜態區),全域性變數和靜態變數的儲存是放在一塊的,初始化的全域性變數和靜態變數在一塊區域,未初始化的全域性變數和未初始化的靜態變數在相鄰的另一塊區域。- 程式結束釋放

4.另外還有乙個專門放常量的地方。 - 程式結束釋放

2、 棧上分配,函式內的區域性變數就是從這分配的,但分配的記憶體容易有限。

3、 堆上分配,也稱動態分配,如我們用new,malloc分配記憶體,用delete,free來釋放的記憶體。

static全域性變數與普通的全域性變數有什麼區別:

static全域性變數只初使化一次,防止在其他檔案單元中被引用;   

static區域性變數和普通區域性變數有什麼區別:

static區域性變數只被初始化一次,下一次依據上一次結果值;

全 局變數(外部變數)的說明之前再冠以static 就構成了靜態的全域性變數。全域性變數本身就是靜態儲存方式, 靜態全域性變數當然也是靜態儲存方式。 這兩者在儲存方式上並無不同。這兩者的區別在於非靜態全域性變數的作用域是整個源程式, 當乙個源程式由多個原始檔組成時,非靜態的全域性變數在各個原始檔中都是有效的。 而靜態全域性變數則限制了其作用域, 即只在定義該變數的原始檔內有效, 在同一源程式的其它原始檔中不能使用它。由於靜態全域性變數的作用域侷限於乙個原始檔內,只能為該原始檔內的函式公用, 因此可以避免在其它原始檔中引起錯誤。   

把區域性變數改變為靜態變數後是改變了它的儲存方式即改變了它的生存期。把全域性變數改變為靜態變數後是改變了它的作用域,限制了它的使用範圍。

在什麼樣的環境下,會導致飢餓的發生,沒有預先確定好的規則。而一旦發生下面四種情況之一,就會導致死鎖的發生。

相互排斥:   乙個執行緒或者程序永遠占有一共享資源,例如,獨佔該資源。  

迴圈等待:   程序a等待程序b,而後者又在等待程序c,而程序c又在等待程序a。  

部分分配:   資源被部分分配。例如,程序a和b都需要用訪問乙個檔案,並且都要用到印表機,程序a獲得了檔案資源,程序b獲得了印表機資源,但是兩個程序不能獲得全部的資源。  

缺少優先權:   乙個程序訪問了某個資源,但是一直不釋放該資源,即使該程序處於阻塞狀態。  

雜湊 演算法將任意長度的二進位制 值對映 為固定長度的較小二進位制值,這個小的二進位制值稱為雜湊值。雜湊值是一段資料唯一且極其緊湊的數值 表示形式。如果雜湊一段明文而且哪怕只更改該段落的乙個字母,隨後的雜湊都將產生不同的值。要找到雜湊為同乙個值的兩個不同的輸入,在計算上是不可能的,所以資料的雜湊值 可以檢驗資料的完整性。

雜湊表是根據設定的雜湊函式 h(key)和處理衝突方法將一組關鍵字映象到乙個有限的位址區間上,並以關鍵字在位址區間中的象作為記錄在表中的儲存位置,這種表稱為雜湊表 或雜湊,所得儲存位置稱為雜湊位址或雜湊位址。作為線性資料結構與**和佇列等相比,雜湊表無疑是查詢速度比較快的一種。

緩衝溢位是一種系統攻擊的手段,藉著在程式緩衝區編寫超出其長度的**,造成溢位,從而破壞其堆疊,使程式執行攻擊者在程式位址空間中早已安排好的**,以達到其目的.

Kingsoft西山居筆試試題

一 填空題 1.char sztest 12345 t n 0abcd 0 則strlen sztest 值為 sizeof sztest 值為 2.int antest 5 10 int n1 antest 4 antest 10 n2 antest 3 1 antest 1 3 則n1 的值為 ...

西山居決賽

很刺激的比賽,雖然表現很捉雞,但還是很開心。tc cf規則,3小時,其中0.5小時是hack環節 分數分布 1000 1000 1500 2000 2000 01 看了一下發現是道sb的拓撲排序 事實上不是 輕鬆過掉pretest 02 分析錯了最壞情況,以為暴力能過,然後就暴力了。03 一開始就覺...

西山居測試面試題目

小白一枚。去面試西山居的測試崗位,面試官說想要的是開發測試工作人員,所以問的全是c 計算機網路,網路程式設計方面的知識,測試方面的知識沒問過,也因為自己簡歷上不過關 所以簡歷就真的沒用 所以真的是尬問。總結一下問題吧。有時間會重新更新答案。1.tcp 兩個已經連線好的伺服器跟客戶端,其中一方不斷地發...