• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            單鏈DNA

            換了個地址:http://www.cnblogs.com/vizhen/

             

            指針常量與常量指針

            1. 指針常量是指定義的指針只能在定義的時候初始化,之后不能改變其值,格式如下:【數據類型】【*】【const】【指針常量名稱】;

                  實例如下: 
                
              char * const p1;
              int * const p2;

                    const 位于指針聲明符“*”的右側,這說明聲明的對象是一個常量,而對象的數據類型是指針。所以第一句定義了一個只讀的字符型指針p1;第二句定義了一個只讀的整型指針p2。常指針的值不能改變,但是其指向的內容卻可以改變。如下列:

            #include<iostream>
            using namespace std;
            
            int main()
            {
                char a[5]="abcd";
                char b[5]="efgh";
                char * const p1=a;
                char * const p2=b;
                cout<<"Before Change:"<<endl;
                cout<<"a:"<<a<<endl<<"b:"<<b<<endl;
            
                *p1='1';
                 b[0]='2';
                //p1=p2;
                cout<<"After Changed:"<<endl;
                cout<<"a:"<<a<<endl<<"b:"<<b<<endl;
                getchar();
                return 0;
            }
            
            輸出結果:

            image

            去掉注釋則編譯出錯:error C3892: “p1”: 不能給常量賦值(VS 2005);

            指針所指向的內存地址不能更改,指針的值只能在定義的時候初始化,其他地方不能更改。

            2.常量指針是指向常量的指針。因為常量指針指向的對象是常量,因此這個對象的值是不能夠改變的。定義的格式如下:

            【數據類型】【const】【*】【常量指針名稱】;

            【const】【數據類型】【*】【常量指針名稱】;

            如下例:

            #include<iostream>
            using namespace std;
            
            int main()
            {
                char a[5]="abcd";
                char b[5]="efgh";
                const char * p1=a;
                const char *  p2=b;
                cout<<"Before Change:"<<endl;
                cout<<"a:"<<a<<endl<<"b:"<<b<<endl<<"p1:"<<p1<<endl;    a[0]='1';
                p1=p2;
               //*p2='2';
                cout<<"After Changed:"<<endl;
                cout<<"a:"<<a<<endl<<"b:"<<b<<endl<<"p1:"<<p1<<endl;
                getchar();
                return 0;
            }
            
            輸出結果:

            image

            如果去掉注釋則編譯出錯:error C3892: “p2”: 不能給常量賦值;

            可以看出,常量指針所指向的對象的值是不能通過常量指針來改變。這一特性常被用于函數參數的傳遞。

            posted on 2011-02-06 00:21 Geek.tan 閱讀(1929) 評論(0)  編輯 收藏 引用 所屬分類: C++

            導航

            統計

            公告

            coding是我的寂寞,我是誰的寂寞

            隨筆分類(40)

            隨筆檔案(48)

            搜索

            積分與排名

            最新評論

            評論排行榜

            99re久久精品国产首页2020| WWW婷婷AV久久久影片| 狠狠干狠狠久久| 日本人妻丰满熟妇久久久久久| 天天综合久久一二三区| 亚洲欧美国产日韩综合久久| segui久久国产精品| 久久国产精品波多野结衣AV| 精品视频久久久久| 九九热久久免费视频| 香蕉aa三级久久毛片| 婷婷久久五月天| 欧美午夜精品久久久久免费视| 99久久国语露脸精品国产| 97久久精品人人做人人爽| 国产精品久久久久久久| 国产午夜福利精品久久| 久久精品女人天堂AV麻| 思思久久99热只有频精品66| 久久综合狠狠综合久久| 国产精品青草久久久久婷婷| 久久97久久97精品免视看秋霞 | 国产福利电影一区二区三区久久久久成人精品综合 | 中文字幕久久波多野结衣av| 色综合久久久久无码专区| 久久精品无码专区免费青青| 国产精品一久久香蕉产线看| 久久国产V一级毛多内射| 精品人妻伦九区久久AAA片69| 99热成人精品热久久669| 久久夜色精品国产www| 少妇内射兰兰久久| 久久国产综合精品五月天| 亚洲女久久久噜噜噜熟女| 99久久综合国产精品二区| 久久久久久综合网天天| 久久免费精品一区二区| 久久香综合精品久久伊人| 日本精品久久久中文字幕| 国产A三级久久精品| 国产一区二区三精品久久久无广告|