• <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>

            旅途

            如果想飛得高,就該把地平線忘掉

            sizeof

            試題2:以下為Windows NT下的32位C++程序,請計算sizeof的值

            void Func ( char str[100] )
            {
             sizeof( str ) = ?
            }

            void *p = malloc( 100 );
            sizeof ( p ) = ?

              解答:

            sizeof( str ) = 4
            sizeof ( p ) = 4

              剖析:

              Func ( char str[100] )函數中數組名作為函數形參時,在函數體內,數組名失去了本身的內涵,僅僅只是一個指針;在失去其內涵的同時,它還失去了其常量特性,可以作自增、自減等操作,可以被修改。

              數組名的本質如下:

              (1)數組名指代一種數據結構,這種數據結構就是數組;

              例如:

            char str[10];
            cout << sizeof(str) << endl;

              輸出結果為10,str指代數據結構char[10]。

              (2)數組名可以轉換為指向其指代實體的指針,而且是一個指針常量,不能作自增、自減等操作,不能被修改;

            char str[10];
            str++; //編譯出錯,提示str不是左值 

              (3)數組名作為函數形參時,淪為普通指針。

              Windows NT 32位平臺下,指針的長度(占用內存的大小)為4字節,故sizeof( str ) 、sizeof ( p ) 都為4。

            posted on 2007-10-29 01:12 旅途 閱讀(403) 評論(0)  編輯 收藏 引用 所屬分類: C/C++

            亚洲国产精品久久久久网站| 久久综合香蕉国产蜜臀AV| 久久99热狠狠色精品一区| 91精品婷婷国产综合久久| 国产精品久久久99| 久久久久亚洲AV片无码下载蜜桃| 久久亚洲AV成人无码电影| 国产精品美女久久久久av爽 | 久久亚洲AV成人无码电影| 91精品久久久久久无码| 久久综合九色综合网站| 99久久精品国产毛片| 精品一二三区久久aaa片| AA级片免费看视频久久| 久久夜色精品国产欧美乱| 一本色道久久综合狠狠躁篇| 久久精品视频免费| 久久天堂AV综合合色蜜桃网 | 久久超碰97人人做人人爱| 久久精品成人影院| 久久伊人精品青青草原高清| 狠狠色狠狠色综合久久| 欧美精品九九99久久在观看| 91亚洲国产成人久久精品| 国产精品久久久久久久| 久久久久无码精品国产| 一本色道久久HEZYO无码| 亚洲国产日韩综合久久精品| 久久人妻少妇嫩草AV无码蜜桃| 国产成人久久精品麻豆一区| 日本一区精品久久久久影院| 久久青草国产手机看片福利盒子| 日韩精品久久无码人妻中文字幕| yy6080久久| 午夜欧美精品久久久久久久| 久久AV高潮AV无码AV| 国产aⅴ激情无码久久| 伊人久久无码中文字幕| 国产美女亚洲精品久久久综合| 国产成人精品综合久久久| 99久久精品免费看国产一区二区三区 |