北京某公司 IOS面試題

2021-06-18 21:12:17 字數 1297 閱讀 3923

地點:北京市朝陽區東四環中路78號大成國際中心a2-7a11 

010-59626720

1.輸出結果

main()

int *ptr = (int*)(&a+1);

printf("%d,%d",*(a+1),*(ptr-1));

}答案:2,5

*(a+1

)就是a[1]

,*(ptr-1)

就是a[4],

執行結果是2,

5&a+1

不是首位址

+1,系統會認為加乙個

a陣列的偏

移,是偏移了乙個陣列的大小(本例是5個

int)

int *ptr=(int *)(&a+1);

則ptr實際是

&(a[5]),

也就是a+5

原因如下: &a

是陣列指標,其型別為

int (*)[5];

而指標加1要根據指標型別加上一定的值,不同型別的指標+1之後增加的大小不同。

a是長度為5的int陣列指標,所以要加 5*sizeof(int)

所以ptr實際是a[5]

但是prt與(&a+1)型別是不一樣的(這點很重要)

所以prt-1只會減去sizeof(int*)

a,&a

的位址是一樣的,但意思不一樣

a是陣列首位址,也就是

a[0]

的位址,

&a是物件(陣列)首位址,

a+1a[1],&a+1

a[5].

2.運用下列哪些類或方法執行**可以避免阻塞當前執行緒。

a nsoperationqueue

b nscoder

c nstimer

d nsthread 

e schedule

f performselector:withobject:afterdelay

adf3.uiscrollview用到了什麼設計模式?

4.這段**有什麼問題,如何修改

for(int i=0;i

5.obj-c的優缺點。

objc優點:

1) cateogies

2) posing

3) 動態識別

4) 指標計算

5)彈性訊息傳遞

6) 不是⼀乙個過度複雜的 c 衍⽣生語⾔言

7) objective-c++ 與 c++ 可混合程式設計

缺點:1) 不⽀支援命名空間 

2) 不⽀支援運算子過載 

3)不⽀

支援多重繼承 

北京某公司 面試題 shell 指令碼

1.編寫乙個指令碼 實現簡單的減法運算,要求提示輸入變數?read p 請輸入第乙個數字 num 1 read p 請輸入第二個數字 num 2 expr num 1 1 如果以後輸的是非數字,就不參與運算,故不能寫成num expr num 1 1 if ne 0 then ne 0 then 是...

2018 03 24 某公司面試題

1.閱讀如下 並在答題卡填寫該程式的輸出結果和原因.public class b extends a public class a 輸出結果 ab0ab0 2.編寫乙個函式,將一段文字text翻譯為pig latin返回,英語翻譯為pig latin 的規則是 去除每個單詞的首個字母,追加 ay 後...

廣州某公司面試題及其答案

描述一下漸進增強和優雅降級 漸進增強 針對低版本瀏覽器進行構建頁面,保證最基本的功能,然後再針對高階瀏覽器進行效果 互動等改進和追加功能達到更好的使用者體驗。從被所有瀏覽器支援的基本功能開始,逐步地新增那些只有新式瀏覽器才支援的功能,向頁面新增無害於基礎瀏覽器的額外樣式和功能。當瀏覽器支援時,它們會...