C C 關於隱式轉換 面試題分析

2021-09-06 10:52:37 字數 458 閱讀 1159

以下兩個程式片段a 和b ,問哪個能進入迴圈?

unsigned short

i;unsigned

short index = 0

;for(i=0; i < index-1; i++)

unsigned short

i;unsigned

long index = 0

;for(i=0; i < index-1; i++)

此題主要考慮型別之間的隱式轉換問題,答案是b能進入迴圈

對於片段a:short - int 的結果是int 型的,所以結果是:0<-1,不滿足條件;

對於片段b:unsigned long - int 結果是unsigned long 型的,(-1)在記憶體中的最高位是1,當作unsigned long 型別時為乙個很大的正數,所以能進入迴圈

c c 嵌入式面試題

eg v4l2 ffmpeg alsa h263 rtmp方面,你拿個8k照樣so easy,極個別大公司你甚至可以拿到12k以上 那今天呢我被面試問道的問題簡直濕濕水 1.筆試題 1 指標和引用的區別 2 二分查詢的實現 3 物件導向的三個特點,並簡述 4 c 早繫結與晚繫結,早繫結有什麼優點 5...

關於隱式型別轉換

cat a.cpp include include int main str1 0 0xf0 str1 1 0x00 先整型提公升 再隱式轉換 char int long long num str1 0 8 str1 1 printf ld n num printf x n num 先強制型別轉換 ...

關於MySQL隱式轉換

一 如果表定義的是varchar欄位,傳入的是數字,則會發生隱式轉換。1 表ddl 2 傳int的sql 3 傳字串的sql 仔細看下表結構,rid的字段型別 而使用者傳入的是int,這裡會有乙個隱式轉換的問題,隱式轉換會導致全表掃瞄。把輸入改成字串型別,執行計畫如下,這樣就會很快了。此外,還需要注...