• <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 閱讀(1939) 評論(0)  編輯 收藏 引用 所屬分類: C++

            導航

            統計

            公告

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

            隨筆分類(40)

            隨筆檔案(48)

            搜索

            積分與排名

            最新評論

            評論排行榜

            久久ZYZ资源站无码中文动漫| 99久久99久久| 久久久久久久久久免免费精品| 久久精品国产精品亚洲毛片| 国产福利电影一区二区三区久久老子无码午夜伦不 | 久久精品无码一区二区三区免费| 久久精品欧美日韩精品| 久久精品二区| 亚洲性久久久影院| 久久天天躁狠狠躁夜夜96流白浆| 人人狠狠综合久久亚洲婷婷| 亚洲精品综合久久| 久久夜色精品国产www| 久久av高潮av无码av喷吹| 久久99精品综合国产首页| 亚洲精品乱码久久久久久久久久久久| 精品久久久久久亚洲| 久久精品人人槡人妻人人玩AV| 伊人精品久久久久7777| 久久久久香蕉视频| 亚洲午夜久久久久久久久电影网| 久久久久久亚洲Av无码精品专口| 久久久久久精品无码人妻| 精品久久久久久久无码| 国产国产成人久久精品| 久久99精品久久久久子伦| 国产精品美女久久久久网| 99久久人妻无码精品系列蜜桃| 99久久99久久精品国产| 久久综合中文字幕| 久久婷婷综合中文字幕| 91精品婷婷国产综合久久| 久久国产精品久久久| 丁香狠狠色婷婷久久综合| 精品久久久久久无码专区不卡| 久久精品午夜一区二区福利| 午夜精品久久久久久久| 久久精品国产精品亚洲毛片 | 久久久精品国产亚洲成人满18免费网站 | 一本色道久久综合狠狠躁 | 亚洲欧美日韩精品久久|