一道C語言指針的題目
早上看到的題目,但是現(xiàn)在去找沒看到了。我當(dāng)時(shí)還把圖片放在小號(hào)里面了,大家可以看看。
大家看看這個(gè)代碼輸出什么?如果想讓它輸出77要怎么用指針寫呢?
憑記憶寫一下
#include "stdio.h"#include "stdint.h"
int main()
{
uint16_t a[12] = {0x11,0x12,0x13,0x14,0x77,0x88};
uint32_t *p = (uint32_t*)&a[0];
p++;
printf("%4X\n", *p);
return 0;
}a 一個(gè)位置的大小是2個(gè)字節(jié),p指向的大小是4個(gè)字節(jié),所以p++ 執(zhí)行一次就會(huì)跳動(dòng)4個(gè)字節(jié)。
這樣,他所指向的位置應(yīng)該是
0x0013, 0x0014這樣的話,直接輸出0x00140013
這樣大家能明白了不?

評(píng)論
圖片
表情
