阿里巴巴面試題 指標

2021-08-08 17:16:41 字數 1013 閱讀 4359

下面程式會輸出什麼結果?

#include

#include

int main()

; char **pa = a;

pa++;

printf("%s\n", *pa);

system("pause");

return

0;}

答案:

解析:

char *a = ;

這一行**表示建立了乙個字元型的指標陣列a,陣列裡有三個元素。如下圖:

陣列裡存了三個字元型指標,每個指標指向對應的字串。指標裡存的是字串首元素的位址,第乙個char*存的是字元』w』的位址,第二個char*存的是字元』a』的位址,第三個char*存的是字元』a』的位址

char **pa = a;

這一行**表示:陣列名代表陣列首元素的位址,把陣列首元素的位址存到二級指標pa裡,如下圖:

這一行**表示:

char**pa: 第乙個與char結合,表示此指標是字元型的指標,第二個與pa結合,表示pa是乙個指標。

pa++表示向後偏移乙個char*指標,所以char**pa就指向第二個char*,如下圖:

表示對pa所指向的char*進行解引用,所以就訪問到了「at」(pa是乙個二級指標,對它進行解引用可以訪問char*型別的變數)

阿里巴巴面試題

作業系統的任務排程 房間內有n 1個群眾,1個明星,群眾之間的認識情況未知,所有的群眾都認識這個明星,現在有乙個機器可以問乙個人是否認識另乙個人,效率為o 1 請設計乙個演算法在n個人中找出這個明星。前線戰場有n個戰士,每個戰士都掌握了一些情報,戰士之間的交流 比如打 可以交換雙方的情報。請設計乙個...

阿里巴巴js面試題3

該題難度係數 考查的技術點 1 this 2 閉包 題目如下 var name a var object console.log object.getnamefunc var name2 a var object2 console.log object2.getnamefunc 執行結果 接下來我們...

最全阿里巴巴Java面試題大揭秘

1.結合資料庫存在城市人口表table person fid number fname varchar2 fage number f varchar2 fcity varchar2 1xiaoming 11male燕國2 wangming 12female楚國3 zhangsan 13female ...