<acronym id="xonnx"></acronym>
      <td id="xonnx"></td>
    1. <pre id="xonnx"></pre>

      1. 專注電子技術學習與研究
        當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

        理解sizeof ()對數組的使用

        作者:佚名   來源:本站原創   點擊數:  更新時間:2014年03月14日   【字體:


        經典問題:
              double* (*a)[3][6];
              cout<<sizeof(a)<<endl; // 4 a為指針
              cout<<sizeof(*a)<<endl; // 72 *a為一個有3*6個指針元素的數組
              cout<<sizeof(**a)<<endl; // 24 **a為數組一維的6個指針
              cout<<sizeof(***a)<<endl; // 4 ***a為一維的第一個指針
              cout<<sizeof(****a)<<endl; // 8 ****a為一個double變量
        問題解析:a是一個很奇怪的定義,他表示一個指向double*[3][6]類型數組的指針。既然是指針,所以sizeof(a)就是4。
              既然a是執行double*[3][6]類型的指針,*a就表示一個double*[3][6]的多維數組類型,因此sizeof(*a)=3*6*sizeof(double*)=72。同樣的,**a表示一個double*[6]類型的數組,所以sizeof(**a)=6*sizeof  (double*)=24。***a就表示其中的一個元素,也就是double*了,所以sizeof(***a)=4。至于****a,就是一個double了,所以sizeof(****a)=sizeof(double)=8
         

        關閉窗口

        相關文章

        欧美性色欧美精品视频,99热这里只有精品mp4,日韩高清亚洲日韩精品一区二区,2020国自产拍精品高潮