• <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>
            穩定盈利的期貨交易方法-量化趨勢交易

            alantop -專業量化投資者

            愛好:量化投資,逆向工程,滲透
            隨筆 - 595, 文章 - 0, 評論 - 921, 引用 - 0
            數據加載中……

            指針數組

            有如下定義:
            struct UT_TEST_STRUCT *pTo[2][MAX_NUM];
              請分析這個定義的意義,并嘗試說明這樣的定義可能有哪些好處?
              答案與分析:
              前面我們談了數組指針,現在又提到了指針數組,兩者形式很相似,那么,如何區分兩者的定義呢?分析如下:
              數組指針是:指向數組的指針,比如 int (*pA)[5]。
              指針數組是:指針構成的數組,比如int *pA[5]。
              至于上述指針數組的好處,大致有如下兩個很普遍的原因:
              a)、各個指針內容可以按需要動態生成,避免了空間浪費。
              b)、各個指針呈數組形式排列,索引起來非常方便。
              在實際編程中,選擇使用指針數組大多都是想要獲得如上兩個好處。
            問題:指向指針的指針
              在做一個文本處理程序的時候,有這樣一個問題:什么樣的數據結構適合于按行存儲文本?
              答案與分析:
              首先,我們來分析文本的特點,文本的主要特征是具有很強的動態性,一行文本的字符個數或多或少不確定,整個文本所擁有的文本行數也是不確定的。這樣的特征決定了用固定的二維數組存放文本行必然限制多多,缺乏靈活性。這種場合,使用指向指針的指針有很大的優越性。
              現實中我們嘗試用動態二維數組(本質就是指向指針的指針)來解決此問題:
              圖示是一個指針數組。所謂動態性指橫向(對應每行文本的字符個數)和縱向(對應整個文本的行數)兩個方向都可以變化。
              就橫向而言,因為指針的靈活性,它可以指向隨意大小的字符數組,實現了橫向動態性。
              就豎向而言,可以動態生成及擴展需要的指針數組的大小。
              下面的代碼演示了這種動態數組的用途:
            // 用于從文件中讀取以 '\0'結尾的字符串的函數
            extern char *getline(FILE *pFile);
            FILE *pFile;
            char **ppText = NULL; // 二維動態數組指針
            char *pCurrText = NULL; // 指向當前輸入字符串的指針
            ULONG ulCurrLines = 0;
            ULONG ulAllocedLines = 0;

            while (p = getline(pFile))
            {
             if (ulCurrLines >= ulAllocedLines)
             {
              // * 當前豎向空間已經不夠了,通過realloc對其進行擴展。
             ulAllocedLines += 50; // 每次擴展50行。
              ppText = realloc (ppText, ulAllocedLines * (char *));
              if (NULL == ppText)
              {
               return; // 內存分配失敗,返回
              }
             }
             ppText[ulCurrLines++] = p; // 橫向“擴展”,指向不定長字符串
            }

            posted on 2006-05-29 23:31 AlanTop 閱讀(417) 評論(0)  編輯 收藏 引用 所屬分類: C++

            婷婷综合久久中文字幕蜜桃三电影| 亚洲色大成网站www久久九| 99久久精品国产麻豆| 国产精品久久久99| 狠狠色丁香婷婷久久综合| 无码国内精品久久人妻| 中文精品久久久久国产网址| 亚洲午夜福利精品久久| 九九精品99久久久香蕉| 午夜精品久久久久久影视777| 日韩av无码久久精品免费| 久久久久久久综合综合狠狠| 国产午夜精品久久久久免费视 | 久久精品国产免费一区| 国产精品欧美久久久久无广告| 久久久无码精品亚洲日韩京东传媒| 久久精品黄AA片一区二区三区| 狠狠色伊人久久精品综合网| 热re99久久6国产精品免费| 亚洲欧洲中文日韩久久AV乱码| 91超碰碰碰碰久久久久久综合| 婷婷久久香蕉五月综合加勒比| 亚洲婷婷国产精品电影人久久| 国产产无码乱码精品久久鸭| 99蜜桃臀久久久欧美精品网站| 日韩亚洲国产综合久久久| 高清免费久久午夜精品| 无码国产69精品久久久久网站| 精品一二三区久久aaa片| 色播久久人人爽人人爽人人片aV | 性做久久久久久久| 久久精品桃花综合| 久久精品极品盛宴观看| 久久久91人妻无码精品蜜桃HD| 久久精品国产一区二区| 久久WWW免费人成—看片| 精品国产青草久久久久福利| 99久久国产主播综合精品 | 国产巨作麻豆欧美亚洲综合久久| 久久精品国产精品青草| 久久久久国产一级毛片高清版|