2014年上半年(第39次)全國(guó)計(jì)算機(jī)等級(jí)考試將于2014年3月29日—31日舉行,網(wǎng)上報(bào)名將于2014年2月18日開始。編需要提醒的是在報(bào)名時(shí)一定要避開高峰期,以免造成網(wǎng)絡(luò)癱瘓等問(wèn)題,最后在登陸確認(rèn)是否報(bào)名成功。
本文介紹指針運(yùn)算,任何數(shù)值一旦被強(qiáng)制轉(zhuǎn)換,其類型就改變了。
struct test
{
int num;
char *pcname;
short sdate;
char cha[2];
short sba[4];
}*p;
假設(shè)p 的值為0x100000。如下表表達(dá)式的值分別為多少?
p + 0x1 = 0x___ ?
(unsigned long)p + 0x1 = 0x___?
(unsigned int*)p + 0x1 = 0x___?
p + 0x1 的值為0x100000+sizof(test)*0x1。至于此結(jié)構(gòu)體的大小為20byte,前面的章節(jié)已經(jīng)詳細(xì)講解過(guò)。所以p +0x1 的值為:0x100014。
(unsigned long)p + 0x1 的值呢?這里涉及到強(qiáng)制轉(zhuǎn)換,將指針變量p 保存的值強(qiáng)制轉(zhuǎn)換成無(wú)符號(hào)的長(zhǎng)整型數(shù)。任何數(shù)值一旦被強(qiáng)制轉(zhuǎn)換,其類型就改變了。所以這個(gè)表達(dá)式其實(shí)就是一個(gè)無(wú)符號(hào)的長(zhǎng)整型數(shù)加上另一個(gè)整數(shù)。所以其值為:0x100001。
(unsigned int*)p + 0x1 的值呢?這里的p 被強(qiáng)制轉(zhuǎn)換成一個(gè)指向無(wú)符號(hào)整型的指針。所以其值為:0x100000+sizof(unsigned int)*0x1,等于0x100004。
唯學(xué)網(wǎng)一家集教育資訊發(fā)布與院校教學(xué)管理系統(tǒng)于一體的多功能開放式綜合教育服務(wù)平臺(tái),教育領(lǐng)域涵蓋學(xué)歷學(xué)位等十一個(gè)大類及上百個(gè)子類,因此考生如若獲知關(guān)于計(jì)算機(jī)等級(jí)考試的任何資訊如計(jì)算機(jī)等級(jí)考試考試試題、計(jì)算機(jī)等級(jí)考試成績(jī)查詢、 計(jì)算機(jī)等級(jí)考試培訓(xùn)等,可隨時(shí)關(guān)注唯學(xué)網(wǎng)計(jì)算機(jī)培訓(xùn)欄目,如有任何疑問(wèn)也可在線留言,小編會(huì)為您在第一時(shí)間解答!