• <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>
            流量統計:
            Rixu Blog (日需博客)
            日需博客,每日必需來踩踩哦..
            posts - 108,comments - 54,trackbacks - 0
            2個指針指向的地址和變量地址一樣,值為什么不一樣呢?疑惑。
            1. #include "stdafx.h"
            2.  
            3.  
            4. int _tmain(int argc, _TCHAR* argv[])
            5. {
            6.     const int a=10;
            7.     const int *p1=&a;
            8.     int *p2=const_cast<int *>(p1);
            9.     if (&a==p1)
            10.     {
            11.         printf("&a==p1\n");
            12.     }
            13.     else
            14.     {
            15.         printf("&a!=p1\n");
            16.     }
            17.     if (p2==p1)
            18.     {
            19.         printf("p2==p1\n");
            20.     }
            21.     else
            22.     {
            23.         printf("p2==p1\n");
            24.     }
            25.     printf("%#p:%d %#p:%d %#p:%d\n",&a,a,p1,*p1,p2,*p2);
            26.     *p2=20;
            27.     if (&a==p1)
            28.     {
            29.         printf("&a==p1\n");
            30.     }
            31.     else
            32.     {
            33.         printf("&a!=p1\n");
            34.     }
            35.     if (p2==p1)
            36.     {
            37.         printf("p2==p1\n");
            38.     }
            39.     else
            40.     {
            41.         printf("p2==p1\n");
            42.     }
            43.     printf("
              %#p:%d %#p:%d %#p:%d
              \n"
              ,&a,a,p1,*p1,p2,*p2);
            44.     return 0;
            45. }
            46.  

            Logo
            作者:Gezidan
            出處:http://www.rixu.net    
            本文版權歸作者和博客園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接,否則保留追究法律責任的權利。
            posted on 2011-09-10 21:21 日需博客 閱讀(2224) 評論(7)  編輯 收藏 引用 所屬分類: C C++未分類

            FeedBack:
            # re: 修改const變量的疑問[未登錄]
            2011-09-10 23:30 | X
            是編譯器優化造成的  回復  更多評論
              
            # re: 修改const變量的疑問
            2011-09-11 00:01 | Gezidan Studio
            能否詳細點?@X
              回復  更多評論
              
            # re: 修改const變量的疑問[未登錄]
            2011-09-11 08:16 | jejer
            關鍵詞:常量折疊
            const值會在編譯時直接被確定  回復  更多評論
              
            # re: 修改const變量的疑問
            # re: 修改const變量的疑問
            2011-09-11 17:43 | 11
            歡迎加QQ群來 歡迎大家 提問
            QQ群:C C++ linux 軟件基地① 64222213 滿
            QQ群:C C++ linux 軟件基地② 93623167 沒滿
            QQ群:C C++ linux 軟件基地③ 167881329 滿
            QQ群:C C++ linux 軟件基地④ 174551731 高級群(沒滿)  回復  更多評論
              
            # re: 修改const變量的疑問
            2011-09-12 12:07 | 陳梓瀚(vczh)
            假設有代碼
            const int a=0;
            int *b=const_cast<int*>(&a);
            int c=a;

            編譯器會變成
            int a=0;
            int *b=&a;
            int c=10;

            因此修改*b當然跟c毫無關系了,因為常數被傳播了。本來就不應該干修改const變量內容的事情。  回復  更多評論
              
            # re: 修改const變量的疑問
            2011-09-12 21:13 | Gezidan Studio
            非常透徹@陳梓瀚(vczh)
              回復  更多評論
              
            久久最近最新中文字幕大全| 国产成人精品久久亚洲| 伊人久久一区二区三区无码| 久久久一本精品99久久精品88| 久久热这里只有精品在线观看| 伊人久久大香线蕉AV色婷婷色| 国产精品视频久久| 久久婷婷色综合一区二区| 奇米综合四色77777久久| 国产精品青草久久久久福利99 | 亚洲国产精品无码久久一区二区 | 久久精品一本到99热免费| 91精品国产乱码久久久久久| 久久亚洲精品无码观看不卡| 久久精品人人槡人妻人人玩AV| 久久精品亚洲精品国产欧美| av午夜福利一片免费看久久| 99久久免费国产精品特黄| 亚洲国产成人久久综合碰碰动漫3d| 国内精品伊人久久久影院| 99精品久久久久久久婷婷| 久久精品毛片免费观看| 久久亚洲AV无码精品色午夜 | 精品永久久福利一区二区| 久久亚洲精品无码VA大香大香| 久久久久久国产精品免费免费| …久久精品99久久香蕉国产| 人妻少妇久久中文字幕| 99精品久久精品一区二区| 久久无码人妻精品一区二区三区 | 99久久精品费精品国产一区二区 | 国产精品久久久亚洲| 久久久久亚洲AV成人网| 国产成年无码久久久久毛片| 亚洲狠狠婷婷综合久久久久| 一本色道久久综合狠狠躁篇| 色婷婷久久久SWAG精品| 欧美精品九九99久久在观看| 久久午夜无码鲁丝片午夜精品| 免费精品久久久久久中文字幕| 久久精品国产99久久丝袜|