專注電子技術(shù)學(xué)習(xí)與研究
當(dāng)前位置:單片機(jī)教程網(wǎng) >> MCU設(shè)計(jì)實(shí)例 >> 瀏覽文章

C語言中 const 的用法

作者:xuchen   來源:xuchen的blog   點(diǎn)擊數(shù):  更新時(shí)間:2014年05月28日   【字體:

 C語言中,被const限定的變量是不允許被改變的,即修飾一個(gè)不可變的變量,屬于只讀變量。

1、與常量的區(qū)別:
常量在程序編譯過程中沒有分配內(nèi)存,自然不能夠改變常量的值。而只讀變量則在內(nèi)存中分配的有地址,只不過這個(gè)值由編譯器限定不允許被修改。const用來限定一個(gè)變量不允許被改變的修飾符。
2、const和指針:
const int nvalue;//nvalue是const
const char *pcontent;//*pcontent是const,pcontent可變
const (char*)pcontent;//pcontent是const,*pcontent可變
char* const pcontent;//pcontent是const,*pcontent可變
const char * const pcontent;//pcontent和*pcontent都是const
上述聲明分別于以下const在后面的聲明等價(jià):
int const nvalue;//nvalue是const
char const *pcontent;//*pcontent是const,pcontent可變
(char *)const pcontent;//pcontent是const,*pcontent可變
char*const pcontent;//pcontent是const,*pcontent可變
char const* const pcontent;//pcontent和*pcontent都是const
判斷原則:沿著*號劃一條線,如果const位于*的左側(cè),則const用來修飾指針?biāo)赶虻淖兞,即指針指向(yàn)槌A浚蝗绻鹀onst位于*的右側(cè),則const用來修飾指針本身,即指針本身是常量。
 
以上為const較常用的最簡單的用法,在http://wenku.baidu.com/view/0f6b2c350b4c2e3f5727637d.html一文中有關(guān)于const更高深的理解及其用法。
關(guān)閉窗口

相關(guān)文章