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

            wsgyj

             

            2009年9月20日

            關于VC中 error C2871: 'std' : does not exist or is not a namespace

            今天寫了個程序用了如下代碼

            #include <iostream.h>
            using namespace std;
            然后編譯時出現  error C2871: 'std' : does not exist or is not a namespace

            查了一下,原來 C++有兩個不同版本的頭文件。引入名字空間這個概念以前編譯器用的是#include   <iostream.h>,
            而引入名字空間的概念以后std名字空間的頭文件名字變成了<iostream>。

            <iostream.h>是比較老的C++的頭文件的版本,而namespace是98年才被加入C++標準的,所以<iostream.h>里面是沒有std這么個命名空間的,當使用 <iostream.h>時,相當于在c中調用庫函數,使用的是全局命名空間,也就是早期的c++實現。頭文件<iostream>則沒有定義全局命名空間,使用時必須使用namespace std才能正確使用cout。

              vc6.0支持這個兩個版本. 不過現在都用<iostream>了  

            所以只需將以上語句改為:
            #include <iostream>
            using namespace std;
            或者是  #include <iostream.h>即可。

            posted @ 2009-09-20 21:41 gyj 閱讀(1625) | 評論 (0)編輯 收藏

            2009年9月11日

            C數組定義不可省略第二維及更高的維數 原因分析

            C語言書中寫到在定義二維數組時,可以省略第一維的坐標,如  int a[][3] = {{4,1,6},{2,3,5}};  是合法的
            但是不可以省略二維或者更高維的坐標。 如  int a[3][] = {{4,1,6},{2,3,5}}; 是不合法的

            這是由編譯器原理限制的。 如 定義a[2][3], 在我們引用數組元素a[1][2]時 編譯器的尋址方式是 a+ 1*3+2,若不指定第二維
                                                                    則編譯器將不知道數組的列數也就無法尋址。

            posted @ 2009-09-11 21:11 gyj 閱讀(759) | 評論 (0)編輯 收藏

            2009年9月9日

            C語言編譯過程

            C編譯的整個過程很復雜,大致可以分為以下四個階段:
            1)預處理階段
            在該階段主要完成對源代碼的預處理工作,主要包括對宏定義指令,頭文件包含指令,預定義指令和特殊字符的處理,如對宏定義的替換以及文件頭中所包含的文件中預定義代碼的替換等,總之這步主要完成一些替換工作,輸出是同源文件含義相同但內容不同的文件。
            2)編譯、優化階段
            編譯就是將第一階段處理得到的文件通過詞法語法分析等轉換為匯編語言。
            優化包括對中間代碼的優化,如刪除公共表達式,循環優化等;和對目標代碼的生成進行的優化,如如何充分利用機器的寄存器存放有關變量的值,以減少內存訪問次數。
            3)匯編階段
            將匯編語言翻譯成機器指令
            4)鏈接階段
            鏈接階段的主要工作是將有關的目標文件連接起來,即將在一個文件中引用的符號同該符號在另外一個文件中的定義連接起來,使得所有的目標文件成為一個能夠被操作系統裝入執行的統一整體。

            posted @ 2009-09-09 16:00 gyj 閱讀(825) | 評論 (1)編輯 收藏

            僅列出標題  

            導航

            統計

            常用鏈接

            留言簿

            隨筆分類

            隨筆檔案

            文章分類

            文章檔案

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            精品综合久久久久久97| 久久精品国产91久久麻豆自制| 国产精品熟女福利久久AV| 久久99亚洲综合精品首页| 亚洲欧美一区二区三区久久| 一本一本久久aa综合精品| 国内精品久久久久国产盗摄| 国产aⅴ激情无码久久| 久久精品亚洲精品国产欧美| 色偷偷88888欧美精品久久久| 国产亚洲精久久久久久无码AV| 亚洲精品国产字幕久久不卡 | 天天久久狠狠色综合| 日日狠狠久久偷偷色综合免费 | 久久丫精品国产亚洲av不卡| 91久久精品国产成人久久| 97精品依人久久久大香线蕉97 | 欧美精品一区二区久久| 99久久er这里只有精品18| 成人综合久久精品色婷婷| 久久久精品久久久久久| 欧美亚洲国产精品久久蜜芽| 狠狠色丁香久久婷婷综合五月| 伊人 久久 精品| 亚洲国产婷婷香蕉久久久久久| 9191精品国产免费久久| 精品精品国产自在久久高清| 精品久久久无码人妻中文字幕豆芽 | 免费无码国产欧美久久18| 欧美日韩中文字幕久久久不卡 | 麻豆AV一区二区三区久久| 久久亚洲精品无码aⅴ大香| 伊人情人综合成人久久网小说| 久久久久18| 国产精品久久久久久五月尺| 超级碰碰碰碰97久久久久| 深夜久久AAAAA级毛片免费看| 中文字幕无码久久久| 热99RE久久精品这里都是精品免费| 久久影院午夜理论片无码| 久久亚洲AV无码精品色午夜|