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

            The Fourth Dimension Space

            枯葉北風(fēng)寒,忽然年以殘,念往昔,語(yǔ)默心酸。二十光陰無(wú)一物,韶光賤,寐難安; 不畏形影單,道途阻且慢,哪曲折,如渡飛湍。斬浪劈波酬壯志,同把酒,共言歡! -如夢(mèng)令

            注意一個(gè)細(xì)節(jié)

            #include<iostream>
            using namespace std;


            struct node {
                
            int a;
                
            char b;
            }
            ;

            int main ()
            {
                cout
            <<sizeof(node)<<endl;
                system(
            "pause");
                
            return 0;

            }

            這段代碼運(yùn)行后 您認(rèn)為應(yīng)該輸出幾呢?
            上課的時(shí)候老師突然提出了這樣一個(gè)問(wèn)題,當(dāng)時(shí)我想都沒(méi)想 直接回答了 5。
            呵呵 答案當(dāng)然是錯(cuò)的 現(xiàn)在來(lái)運(yùn)行一下這個(gè)程序 發(fā)現(xiàn)這個(gè)程序的結(jié)果是8;

             
            PS:感謝樓下兩位朋友的提問(wèn) 讓問(wèn)題變得更有意思了 內(nèi)部原理究竟是怎樣的呢?希望知道的朋友能夠予以解答
            我在這里僅給出一些測(cè)試現(xiàn)象 
             struct node
            {
            };
            輸出為1

            struct node
            {
            char a;
            };
            輸出為1

            struct node
            {
            int a;
            double b;
            };
            輸出為16

            struct node
            {
            char a;
            char b;
            char c;
            char d;
            char e;
            }
            輸出為5

            posted on 2009-03-26 00:10 abilitytao 閱讀(329) 評(píng)論(7)  編輯 收藏 引用

            評(píng)論

            # re: 注意一個(gè)細(xì)節(jié) 2009-03-26 00:29 陳梓瀚(vczh)

            錯(cuò)
            你可以把上面的int改成double,你會(huì)發(fā)現(xiàn)結(jié)果是16。  回復(fù)  更多評(píng)論   

            # re: 注意一個(gè)細(xì)節(jié) 2009-03-26 15:27 Sunshine Alike

            @陳梓瀚(vczh)
            是啊,我試過(guò)之后發(fā)現(xiàn)int和double兩個(gè)成員一起size是16,能解釋一下原因么,因?yàn)橐cdouble進(jìn)行對(duì)齊么?  回復(fù)  更多評(píng)論   

            # re: 注意一個(gè)細(xì)節(jié) 2009-03-27 22:00 Wisely

            這跟data structure alignment有關(guān)
            而且通常是compiler & OS dependent
            你可以google一下 應(yīng)該可以找到很多介紹  回復(fù)  更多評(píng)論   

            # re: 注意一個(gè)細(xì)節(jié) 2009-03-27 22:22 abilitytao

            @Wisely
            搜過(guò)了 但是貌似沒(méi)有結(jié)果   回復(fù)  更多評(píng)論   

            # re: 注意一個(gè)細(xì)節(jié) 2009-03-28 00:23 Sunshine Alike

            @abilitytao
            我今天查到一篇文章,里面好像有這方面的解釋
            原文地址
            http://www.shnenglu.com/andxie99/archive/2006/10/26/14230.html  回復(fù)  更多評(píng)論   

            # re: 注意一個(gè)細(xì)節(jié) 2009-04-01 23:20 pp

            傳說(shuō)中的內(nèi)存對(duì)齊機(jī)制......  回復(fù)  更多評(píng)論   

            # re: 注意一個(gè)細(xì)節(jié) 2009-04-01 23:22 pp

            補(bǔ)充:
            一般情況下XX寧可犧牲一點(diǎn)內(nèi)存,可以大大提高效率
            嘻嘻~
              回復(fù)  更多評(píng)論   


            只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問(wèn)   Chat2DB   管理


            精品久久久中文字幕人妻| 国产高潮久久免费观看| 中文国产成人精品久久不卡| 漂亮人妻被黑人久久精品| 国产精品久久久久久久| 人妻精品久久久久中文字幕 | 国产成人精品白浆久久69| 国产精品日韩深夜福利久久| 亚洲精品无码久久久久久| 91久久九九无码成人网站| 亚洲人成伊人成综合网久久久| 一本久久a久久精品综合夜夜| 综合久久精品色| 久久久久久国产a免费观看不卡| 无码超乳爆乳中文字幕久久| 久久久久这里只有精品 | 久久99亚洲网美利坚合众国| 久久五月精品中文字幕| 久久综合中文字幕| 一本久久a久久精品vr综合| 午夜精品久久影院蜜桃| 大香网伊人久久综合网2020| 嫩草影院久久99| 成人妇女免费播放久久久| 亚洲国产精品无码久久久秋霞2 | 久久亚洲国产精品一区二区| 久久久久久久亚洲Av无码| 漂亮人妻被中出中文字幕久久| 欧美精品丝袜久久久中文字幕 | 伊人热热久久原色播放www| 精品欧美一区二区三区久久久| 久久亚洲综合色一区二区三区| 久久A级毛片免费观看| 久久久久久久久无码精品亚洲日韩 | 天堂无码久久综合东京热| 国产成人精品久久亚洲高清不卡 | 亚洲熟妇无码另类久久久| 性欧美丰满熟妇XXXX性久久久 | 国内精品伊人久久久久影院对白| 99久久国产综合精品网成人影院 | 狠狠色综合久久久久尤物|