亚洲一级电影在线观看,九九精品无码专区免费,亚洲AV无码资源在线观看 ,欧美国产高清

優視科技一道指針筆試題目

時間:2020-11-01 10:28:05 筆試題目 我要投稿

優視科技一道指針筆試題目

  今天晚上參加優視(UC)的筆試,我報了一個c++的軟件開發工程師,考前我就想這次一定會考指針題目,所以事先就看了很多關于指針的內容,果然,還是出了一道指針,并且包含有結構體struct,題目是這樣的,前提是在一臺i386的機子上運行

優視科技一道指針筆試題目

  #include

  struct a

  {

  int b;

  short*pd;

  char str[32];

  };

  a st[16];

  int _tmain(int argc, _TCHAR* argv[])

  {

  char * p= (char*)(st[2].str+32);

  cout<

  return 0;

  }

  問你輸出結果是什么?

  哇!!!!,看到這里是不是感覺到有點頭大呢!雖然考前看了很多指針的東西,但是到這里卻還是頭大,好了,接下來我就認真分析一下這道題目:

  1> 看準前提條件,這是一臺I386的機子,這個條件很用,它說明了我們運行平臺是一個32位機,因此int類型占用4個字節32位。

  2> 接下來我們分析一下struct類型,前面一個int b, 占用4個字節,中間一個short類型占用兩個字節,后面一個char類型的數組,當然是占用32個字節,到這里你認為分析完了嗎,很不幸,如果你只分析到這一步,肯定得不到正確結果,現在讓我們來想一想struct類型在編譯之后數據存放地址的對齊問題,這涉及到一個原則就是sizeof(struct_name)一定是結構體中最長類型的'整數倍,即sizeof(a)%4==0,這樣計算則可知sizeof(a)==40,這種對齊方式是為了計算機計算時的方便,是編譯器性能優化的一部分,具體細節你可以去google一下,上面的計算方式很簡單,但是并不通用。

  3>經過第二步的分析我們知道a的大小為40個字節,接下來我們分析st[2].str+32,這里str[2].str取出來的是一個地址,故st[2].str的偏移量(相對于str[0])為80,而str[2].str相對str[2]偏移了8個字節,故str[2].str的相對偏移量為88,加上32之后變為偏移量為120.、

  4>由3的分析知指針p現在指向的地址相對偏移量為120,故p-((char*)(st)) 為120,這是由于(char*)st指向 數組開始地址,由于初始化的st為空,幫指針指向內容為空,故p-((char*)(st))=120.

【優視科技一道指針筆試題目】相關文章:

優納科技軟件測試面試題目11-19

優捷Java開發工程師筆試題目11-17

上海中網科技筆試題目11-19

科技企業最怪異筆試題目11-17

大唐和亞信科技筆試題目12-03

藍盟科技面試筆試題目11-16

中國移動網優中心的筆試題目08-29

酷瑞(上海)網絡科技筆試題目11-19

深圳訊呼科技有限公司筆試題目11-15

主站蜘蛛池模板: 亚洲国产香蕉碰碰人人| 综合伊人久久在| 国产精品国产av片国产| 亚洲中文字幕无码中文字在线| 99青青青精品视频在线| 国产精品免费观看调教网| 免费久久人人爽人人爽av| 日韩欧美国产一区精品| 色午夜日本高清视频www| 国产成人av无码永久免费| 久青草国产97香蕉在线视频| 国产成人无码va在线播放| 国产精品国产三级国产试看| 久久精品国产福利国产秒拍| 玉门市| 易门县| 又粗又大又爽又舒服日产| 人妻精品久久久无码区色视| 亚洲色五月| 伊人色在线视频| 乱熟女高潮一区二区在线| 精品视频一区二区| 久久精品av一区二区免费| 国产精品美女久久久久| 久久精品www人人做人人爽| 国产精品白丝av嫩草影院| 久久99精品久久久66| 国内精品免费| 国产最新无码专区在线| 日本50岁丰满熟妇xxxx| 亚洲欧美日韩在线观看一区二区三区 | 国产aⅴ爽av久久久久久| 亚洲一区二区三区四区五区六区| 亚洲中文无码av永久app| 日本熟妇色xxxxx日本免费看| 国产日产欧洲无码视频无遮挡| 欧美日韩专区| 国产3p露脸普通话对白| 午夜毛片不卡高清免费看| 亚洲国产精品一区二区成人片不卡| 无码av中文一区二区三区|