Re: [問題] 請教計概問題
※ 引述《wsx (wsx)》之銘言:
: 1.
: http://www.lic.nkfust.edu.tw/02-collection/203-exam/gra/23-inf/st/942301.pdf
: 請問第10題 解答是給D
: 但是D應該是屬於application layer的吧
: 想請問 是因為其它選項都不是屬於 OSI layer裡的協定
: 所以才選D的嗎?
: 2.請問第18題 答案是給B
: 但我覺得D應該也是錯的 它使用的應該是2.4GHZ吧
: 至於B選項的 技術相容是指相同都在2.4GHZ嗎?
: 1.
: http://www.lic.nkfust.edu.tw/02-collection/203-exam/gra/23-inf/st/932302.pdf
: 請問第一題 我覺得他的寫法都是對的耶
: 答案是給D 請問是錯在哪邊呢?
這跟運算子的優先權有關
D如果要正確應該是 (*(a+i))[ j ]
如果如原題目 *(a+i)[ j ] 會是 *( *( (a+i) + j ) )
雖然跟B 長的很像 但B是 *( *(a+i) + j )
: 2.第二題 是因為(f(*[10]))[4] 所以是10*4=40 嗎?
: 因為解答只給4*10=40 有點不知道為什麼@@
f是一個陣列
陣列內存的是
int(*)[4]
也就是每個指標都指向一個大小為4的陣列的起始位址
所以可以看成
typedef int(*Ptr4Array)[4];
Ptr4Array f[ 10 ];
這種指標用在如下
int b[4];
int b2[4];
int (*f[10])[4];
f[0] = &b;
f[1] = &b2;
(*f[0])[0] = 0xf200;
(*f[0])[1] = 0xf201;
(*f[1])[0] = 0xf210;
(*f[1])[1] = 0xf211;
printf("b[0] = %x\n",b[ 0 ]);
printf("b[1] = %x\n",b[ 1 ]);
printf("b2[0] = %x\n",b2[ 0 ]);
printf("b2[1] = %x\n",b2[ 1 ]);
: 3.第三題 signature和什麼無關? 這我真的不知道
: 可以指教一下嗎?
overload
同signature不同參數則可以overload
另外類似的題目會問說這是在OOL的什麼觀念
若出現封裝(encapulation)就是封裝,而不是繼承、多型的觀念
: 4.第四題 答案是給-2
: 我先說我的想法:
: ~0 就代表是1
: 那他說左移1位 那不就變成0嗎? 為什麼是-2呢?
(~0)是bitwise的inv
所以是
0xfffffff
左移後得到
0xffffffe
所以是-2
: 5.第二大題 第三題
: 答案說j,k= 5,4 但我是算5,3
: 我是這樣算的:
: p=a+1=3 q=1
: j=3+2=5 k=p[*q]=3[1]=3
: k那邊 我比較不懂程式碼的意思 所以把它當成乘法XDDD
: 請大大指教一下
p = a+1 這是在 {3}的位置
q = &i
j = *p + *(p-1)
== 3 + 2
== 5
k = p[ *q ]
== (a+1)[ *q ]
== (a+1)[ i ]
== (a+1)[ 1 ]
== a[ 1+1 ]
== a[ 2 ]
== 4
: 抱歉喔 把我的問題提出來 請大大們不吝指教
: 謝謝唷^^"
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.227.121.250
※ 編輯: sunneo 來自: 61.227.121.250 (04/01 02:00)
推
04/03 01:04, , 1F
04/03 01:04, 1F
※ 編輯: sunneo 來自: 61.227.125.189 (04/14 13:06)
討論串 (同標題文章)