華為面試題解析 06

2021-12-30 04:54:53 字數 645 閱讀 3647

06. 計算下列程式的輸出

[cpp] 

/*  * exercise05.c 

*  *  created on: 2012-11-5 

*      author: xiaobin 

*/  

int main(int argc, char* ar**)  

int *p, *q;  

p = a;  

q = &a[2];  

printf("%d\n", a[q-p]);  

return 0;  

}   

首先,我們要知道陣列a的數值情況。

a是有3個元素的陣列,他們分別是a[0] = 0; a[1] = 1; a[2] = 2;

然後,我們要知道指標p和q的數值情況。

p是乙個指向a陣列的指標,那麼他的數值就是0。

q是乙個取a陣列第3個元素的指標,那麼他的數值就是2。  

最後,計算q與p的位址差

q - p = 2;  

輸出結果:(a[2])

[cpp]  

2   

附調試圖:

面試題解析

1.繼承執行順序 當兩個類之間有繼承關係時,第一次構造子類的例項時,是按照如下順序進行的 1.子類的靜態成員初始化語句 2.子類的靜態建構函式 3.子類的非靜態成員初始化語句 4.父類的靜態成員初始化語句 5.父類的靜態建構函式 6.父類的非靜態成員初始化語句 7.父類的建構函式 8.子類的建構函式...

面試題解析記載

工具類原始碼 hashcode 在建立類的時候要覆蓋equal 和 hash 方法 arraylist 基礎陣列來實現的,遍歷查詢快,但是刪除需要移動陣列資料,處理會慢。linkedlist 實現原理通過鍊錶實現,插入快,查詢和刪除慢。hashmap 非執行緒安全的,通過鍊錶實現的,查詢速度回快很多...

華為面試題

1 區域性變數能否和全域性變數重名?答 能,區域性會遮蔽全域性。要用全域性變數,需要使用 區域性變數可以與全域性變數同名,在函式內引用這個變數時,會用到同名的區域性變數,而不會用到全域性變數。對於有些編譯器而言,在同乙個函式內可以定義多個同名的區域性變數,比如在兩個迴圈體內都定義乙個同名的區域性變數...