typedef和define在修飾指針變量時(shí)的區(qū)別

This is my first article written in markdown. ??
#define PINT int *  
typedef int * pint;

Const pint p; //p的值不能改變,p指向的內(nèi)存里的值可以改變。相當(dāng)于int *const p,這里Const修飾的是p,pint是一個(gè)變量類型,不可拆分;  
Const PINT p; //p的值可以改變,p指向的內(nèi)存里的值不能改變,相當(dāng)于const int *p;或int const *p;

pint a, b; //a和b都是int類型的指針
PINT a, b; //相當(dāng)于int *a, b;只有a是指針

小結(jié):typedef聲明了自定義數(shù)據(jù)類型,而define只是簡(jiǎn)單的替換。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容