日本免费精品_最新日韩一区_亚洲视频一区在线_a在线视频观看_天天射夜夜骑_粉嫩av一区二区三区_欧美中日韩免费视频_综合图区欧美_国内精品美女在线观看_午夜精品久久久久久久男人的天堂

首頁 > 編程 > C++ > 正文

解析C++編程中的#include和條件編譯

2020-05-23 14:15:14
字體:
來源:轉載
供稿:網友

這篇文章主要介紹了解析C++編程中的#include和條件編譯,是C++入門學習中的基礎知識,需要的朋友可以參考下

文件包含的作用

所謂“文件包含”處理是指一個源文件可以將另外一個源文件的全部內容包含進來,即將另外的文件包含到本文件之中。C++提供了#include命令用來實現“文件包含”的操作。如在file1.cpp中有以下#include命令:

 

 
  1. #include ″file2.cpp″ 

它的作用見圖示意。

解析C++編程中的#include和條件編譯

“文件包含”命令是很有用的,它可以節省程序設計人員的重復勞動。

#include命令的應用很廣泛,絕大多數C++程序中都包括#include命令。現在,庫函數的開發者把這些信息寫在一個文件中,用戶只需將該文件“包含”進來即可(如調用數學函數的,應包含cmath文件—),這就大大簡化了程序,寫一行#include命令的作用相當于寫幾十行、幾百行甚至更多行的內容。這種常用在文件頭部的被包含的文件稱為“標題文件”或“頭部文件”。

頭文件一般包含以下幾類內容:

對類型的聲明。

函數聲明。

內置(inline)函數的定義。

宏定義。用#define定義的符號常量和用const聲明的常變量。

全局變量定義。

外部變量聲明。如entern int a;

還可以根據需要包含其他頭文件。

不同的頭文件包括以上不同的信息,提供給程序設計者使用,這樣,程序設計者不需自己重復書寫這些信息,只需用一行#include命令就把這些信息包含到本文件了,大大地提高了編程效率。由于有了#include命令,就把不同的文件組合在一起,形成一個文件。因此說,頭文件是源文件之間的接口。

include命令的兩種形式

在#include命令中,文件名除了可以用尖括號括起來以外,還可以用雙撇號括起來。#include命令的一般形式為:

#include <文件名>

#include ″文件名″

如:

#include

#include ″iostream″

都是合法的。二者的區別是: 用尖括號時,系統到系統目錄中尋找要包含的文件,如果找不到,編譯系統就給出出錯信息。

有時被包含的文件不一定在系統目錄中,這時應該用雙撇號形式,在雙撇號中指出文件路徑和文件名。

如果在雙撇號中沒有給出絕對路徑,如#include ″file2.c″則默認指用戶當前目錄中的文件。系統先在用戶當前目錄中尋找要包含的文件,若找不到,再按標準方式查找。如果程序中要包含的是用戶自己編寫的文件,宜用雙撇號形式。

對于系統提供的頭文件,既可以用尖括號形式,也可以用雙撇號形式,都能找到被包含的文件,但顯然用尖括號形式更直截了當,效率更高。

關于C++標準庫

在C++編譯系統中,提供了許多系統函數和宏定義,而對函數的聲明則分別存放在不同的頭文件中。如果要調用某一個函數,就必須用#include命令將有關的頭文件包含進來。C++的庫除了保留C的大部分系統函數和宏定義外,還增加了預定義的模板和類。但是不同C++庫的內容不完全相同,由各C++編譯系統自行決定。不久前推出的C++標準將庫的建設也納入標準,規范化了C++標準庫,以便使C++程序能夠在不同的C++平臺上工作,便于互相移植。新的C++標準庫中的頭文件一般不再包括后綴.h,例如:

 

 
  1. #include <string> 

但為了使大批已有的C程序能繼續使用,許多C++編譯系統保留了C的頭文件,即提供兩種不同的頭文件,由程序設計者選用。如:

 

 
  1. #include <iostream.h> //C形式的頭文件 
  2. #include <iostream> //C++形式的頭文件 

效果基本上是一樣的。建議盡量用符合C++標準的形式,即在包含C++頭文件時一般不用后綴。如果用戶自己編寫頭文件,可以用.h為后綴。

C++條件編譯#ifdef #else

一般情況下,在進行編譯時對源程序中的每一行都要編譯。但是有時希望程序中某一部分內容只在滿足一定條件時才進行編譯,也就是指定對程序中的一部分內容進行編譯的條件。如果不滿足這個條件,就不編譯這部分內容。這就是“條件編譯”。

有時,希望當滿足某條件時對一組語句進行編譯,而當條件不滿足時則編譯另一組語句。

條件編譯命令常用的有以下形式:

1) #ifdef 標識符

程序段1

#else

程序段2

#endif

它的作用是當所指定的標識符已經被#define命令定義過,則在程序編譯階段只編譯程序段1,否則編譯程序段2。#endif用來限定#ifdef命令的范圍。其中#else部分也可以沒有。

2) #if 表達式

程序段1

#else

程序段2

#endif

它的作用是當指定的表達式值為真(非零)時就編譯程序段1,否則編譯程序段2。可以事先給定一定條件,使程序在不同的條件下執行不同的功能。

【例】在調試程序時,常常希望輸出一些所需的信息,而在調試完成后不再輸出這些信息,可以在源程序中插入條件編譯段。下面是一個簡單的示例。

 

 
  1. #include <iostream> 
  2. using namespace std; 
  3. #define RUN //在調試程序時使之成為注釋行 
  4. int main( ) 
  5. int x=1, y=2, z=3; 
  6. #ifndef RUN //本行為條件編譯命令 
  7. cout<<"x="<<x<<", y="<<y<<", z="<<z<<"/n"//在調試程序時需要輸出這些信息 
  8. #endif //本行為條件編譯命令 
  9. cout<<"x*y*z="<<x*y*z<<endl; 

第3行用#define命令的目的不在于用RUN代表一個字符串,而只是表示已定義過RUN,因此RUN后面寫什么字符串都無所謂,甚至可以不寫字符串。在調試程序時去掉第3行(或在行首加//,使之成為注釋行),由于無此行,故未對RUN定義,第6行據此決定編譯第7行,運行時輸出x,y,z的值,以便用戶分析有關變量當前的值。運行程序輸出:

 

 
  1. x=1, y=2, z=3 
  2. x*y*z=6 

在調試完成后,在運行之前,加上第3行,重新編譯,由于此時RUN已被定義過,則該cout語句不被編譯,因此在運行時不再輸出x,y,z的值。運行情況為:

 

 
  1. x*y*z=6 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
免费日韩精品中文字幕视频在线| 色综合天天综合网天天狠天天| 日韩黄色在线播放| 国产成人精品综合网站| 一区二区三区在线免费 | 中文天堂在线一区| 国产福利一区二区精品秒拍| 精品视频资源站| 中文字幕在线视频日韩| 午夜伊人狠狠久久| 日韩精品午夜| 亚洲国产午夜精品| 国产黄在线播放| 日韩免费视频一区二区视频在线观看 | 精品亚洲永久免费| 一级国产黄色片| 国产羞羞视频在线播放| 日本精品国语自产拍在线观看| 欧美性极品xxxx做受| wwwwww在线观看| 精品视频三区| 国产欧美日韩久久| 欧美另类专区| 日韩欧美在线不卡| a级在线免费观看| 国产三级在线| 久久综合九色欧美综合狠狠| 精品亚洲国内自在自线福利| 亚洲一区视频在线观看视频| 中文字幕亚洲免费| 91精品啪在线观看国产60岁| 中文字幕欧美国内| 国产中文在线| 日韩中文字幕视频在线| 欧美日韩综合高清一区二区| 在线看欧美日韩| 日韩视频不卡中文| 精品久久电影| 国产又粗又猛又爽又黄91精品| 成人久久在线| 日韩网站中文字幕| 日韩在线欧美| 深夜福利一区二区| 一级免费a一片| 久久久久久久久99精品| 精品免费久久久| 日韩在线 中文字幕| 日韩精品 欧美| 一区二区三区免费看视频| 国产欧亚日韩视频| 亚洲国产91精品在线观看| 欧美片网站免费| 欧美日韩三级在线| 一区二区三区在线免费| 一区二区三区精品久久久| 免费在线亚洲| 久久99精品久久久久子伦| 77777_亚洲午夜久久多人| 欧美日韩视频不卡| 免费国产h视频在线观看86| 国产精久久久久| 国产日韩精品久久久| 中文字幕在线观看国产| 日韩欧美中文在线视频| 91精品网站| 91精品国产综合久久香蕉的特点| 国产日韩在线亚洲字幕中文| 精品久久久精品| 国产xxx在线| 欧美亚洲另类制服自拍| 中文字幕欧美日韩在线| 精品一区二区三区中文字幕 | 国产视频2区| 国产欧美日韩成人| 色国产在线视频| 最新中文字幕在线播放 | 97caopor国产在线视频| 大香一本蕉伊线亚洲网| 一区二区三区高清在线| 亚洲人线精品午夜| 日韩免费精品| 91精品国产网站| 日韩午夜中文字幕| 国产主播中文字幕| 亚洲欧美日本另类| 日韩欧美在线综合| 精品国产999| 亚洲欧美中文字幕| 国产黄色精品| 日韩国产欧美三级| 国产高清在线视频| 国产高清一级片| 日韩精品在线观看网站| 国产一区深夜福利| 欧美日韩亚州综合| 亚洲欧美久久久| 久久精品免费在线观看| 午夜国产在线| 亚洲伊人婷婷| 久久精品日韩欧美| 91精品视频国产| 中文官网资源新版中文第二页在线观看| 最近高清中文在线字幕在线观看1| 国产高潮久久久| 日韩精品视频中文字幕| 日韩欧美中文字幕在线观看| 不卡专区在线| 欧美二区在线观看| 日韩高清不卡| 成人福利一区| 日韩欧美综合| 欧美日韩国产中文精品字幕自在自线| 樱花草www在线| 亚洲午夜久久| 精品999视频| 日韩欧美一级视频| 午夜av一区二区| 亚洲国产www| 99综合视频| 免费视频最近日韩| 成年人看的羞羞网站| 国产欧美第一页| 国产欧美自拍一区| 国产视频一区三区| 国产 欧美 日韩 在线| 久久中文免费视频| 中文字幕在线视频网| 不卡视频一区二区三区| 91麻豆精品国产91久久久使用方法| 亚洲乱码中文字幕| 欧美三级在线看| 欧美中文字幕在线观看视频| 亚洲免费观看视频| 日韩在线欧美| 午夜国产福利一区二区| 久久久久久久久99精品| 欧美日韩中文字幕一区| 欧美三级一区二区三区| 日韩中文欧美| 国产欧美日韩在线播放| 日韩av二区| 亚洲羞羞网站| 精品福利在线观看| 国产在线观看色| 亚洲一区资源| 欧美中文字幕精品| 精品一区二区三区中文字幕在线| 免费看黄资源大全高清| 深夜福利一区二区| 日韩精品在线看| 中文字幕在线看精品乱码| 91精品国产91久久久久青草| 亚洲.国产.中文慕字在线| 精品国产免费视频| 欧美 中文字幕| 久久精品在线观看| 亚洲欧洲一区二区天堂久久| 国产字幕中文| 日韩精品丝袜在线| 久久视频在线免费观看| 久本草在线中文字幕亚洲欧美| 一区二区三区中文字幕在线观看| 欧美区高清在线| 久99久视频| 欧美一级久久久久久久久大| 久久久精品福利| 成年人黄国产| 99精品在线播放| 亚洲一区在线观看免费| 91精品观看| 日本黄色一区二区三区| 亚洲国产福利| 国产黄在线观看| 日韩一级网站| 国产综合精品在线| av免费在线播放| 日韩av一区在线| 中文字幕国产欧美| 精品视频三区| 国产高清在线视频| 国产一区深夜福利| 国产乱国产乱老熟300部视频| 中文字幕亚洲在| 久久久精品日韩欧美| 欧洲精品在线一区| 国产高潮久久久| 在线视频三区| 亚洲 欧美综合在线网络| 91精品国产自产观看在线| 日韩三级一区二区| 久久久精品日韩| 国产欧美日韩精品在线| 成年人看的羞羞网站| av丝袜在线| 久久精品国产91精品亚洲| 日韩欧美在线第一页| 欧美在线日韩在线| 日韩精品视频在线看| 欧美婷婷久久| 亚洲综合在线视频| 免费中文字幕日韩欧美| 亚洲国产欧美日韩精品| 久99久视频| 欧美日韩一二三| 91精品婷婷国产综合久久| 欧美变态tickling挠脚心| 日韩欧美在线中文字幕| 国产网站av| 成人无遮挡免费网站视频在线观看 | 欧美日韩999| 亚洲一级在线| 中文天堂在线一区| 日韩精品在线观| 中文字幕亚洲区| 久久99精品国产| 欧美成人vr18sexvr| 日韩欧美三级| 国产一卡2卡3卡免费网站| 久久精品网站免费观看| 欧美日韩亚洲国内综合网| 日韩视频不卡中文| 中文字幕一区二区三区精品| 亚洲精品欧美二区三区中文字幕| 二区三区中文字幕| 91精品在线观看视频| 欧美在线视频第一页| 国产一级免费在线观看| 亚洲久草视频| 日韩影院二区| 午夜一区二区视频| 国产欧美日韩中文久久| 国产欧美亚洲一区| 精品福利二区三区| 亚欧成人精品| 欧美日韩一级视频| 日韩精品视频在线| 国产福利一区二区| 久久精品国产成人一区二区三区| 日韩中文字幕在线播放| 日韩高清不卡在线| 日韩三级在线播放| 国产在线二区| 一本一道综合狠狠老| 日韩欧美亚洲日产国| 亚洲乱码在线观看| 久久riav| 国产视频97| 精品久久久视频| 91精品国产99| 国产高清一区| 亚洲成av人片一区二区密柚| 久久久久久99精品| 国产欧美日韩在线看| www日韩在线观看| 最近中文字幕第一页| 日韩亚洲欧美中文在线| 日韩中文字幕在线视频播放| 91九色在线播放| 日韩在线中文字幕| 中文字幕在线官网| 国产高清大尺度一区二区不卡| 国产视频aaa| 久久久99久久| 国产一二三视频| 中文字幕亚洲在| 久久精品女人| 精品视频999| 欧美日韩性视频在线| 精品国产欧美| 蜜桃精品视频| 一区视频在线播放| 国产一级在线播放| 免费网站看黄yyy222| 日韩在线观看视频一区二区| 国产乱码午夜在线视频| 中文字幕精品一区二| 天堂在线中文资源| 国内不卡的二区三区中文字幕| 国产欧美日韩在线| 中文在线不卡视频| 久久99久久久欧美国产| 国产成人精品日本亚洲专区61| 日韩国产高清一区| 97天天综合网| 久久中文免费视频| 精品人妻二区中文字幕| 国产欧美日韩高清| 日韩精品―中文字幕| 精品久久人人做人人爽| 日韩欧美中文字幕公布| 一区二区在线看| 精品一区二区三区中文字幕| 亚洲国产一区自拍| 91精品在线观看视频| 欧美大片在线观看一区| 九一久久久久久| 午夜高潮免费视频| 日本亚洲视频在线| 99色在线视频| 国产欧美久久久| 日韩欧美在线看| 日韩精品―中文字幕| 亚洲国产www| 日韩不卡在线播放| 黄色一级大片在线免费看国产一| 国产欧美日韩中文字幕在线| 欧美国产三级| 91精品国产自产在线观看永久∴ | 欧美三级一区二区三区| 美女尤物久久精品| 日韩免费看网站| 日韩中文字幕91| 国产一区不卡在线| 蜜桃视频一日韩欧美专区| 免费日韩精品中文字幕视频在线| 99久久久精品免费观看国产| 欧美日韩亚洲综合在线| 日韩欧美中文字幕公布| 欧美日韩在线第一页| 日韩在线视频中文字幕| 一区二区中文字幕在线| 国产婷婷一区二区| 亚洲一区三区在线观看| 欧美久久在线观看| 99精品视频国产| 国产美女主播视频一区| 国产99在线 | 亚洲| 国产三级做爰在线观看| 欧美日韩91| 亚洲黄页一区| 日韩欧美一级二级三级久久久| 国内国产区免费视频| 中文字幕 欧美日韩| 精品调教chinesegay| 国产拍揄自揄精品视频麻豆| 日韩中文字幕亚洲| 国产 欧美 在线| 日韩欧美在线第一页| av中文在线播放| 国产乱国产乱老熟300| 日韩视频一区| 成人禁用看黄a在线| 日韩视频在线一区二区三区| 午夜av一区二区| 中文字幕亚洲字幕| 天堂在线视频中文网| 最近中文字幕日韩精品| 国产91一区| 日韩不卡在线播放| 国产中文伊人| 日韩欧美不卡视频| 欧美国产中文| 欧美日韩中文字幕| 中文字幕在线精品| 日韩欧美国产高清91| 最近中文字幕在线中文高清版| 日韩国产专区| 欧美日韩在线看| 日韩在线中文字幕| 日韩精品在线私人| 中文字幕在线视频第一页| 日韩免费视频一区二区视频在线观看| 中文字幕国产欧美| 一级特黄aaa大片在线观看| 亚洲理论中文字幕| 国产成人精品三级| 亚洲一区在线视频观看| 日韩.欧美.亚洲| 欧美日韩中文在线| 91精品在线观看国产| 欧美日韩日本视频| 亚洲成av人片| 欧美一级搡bbbb搡bbbb| 精品综合久久久久| 99中文字幕一区| 免费看日韩精品| 精品久久久三级| 亚洲黄色片在线观看| 亚洲高清不卡一区| 国产欧美日韩在线视频| 免费一级欧美在线观看视频| 亚洲 欧美综合在线网络| 国产成人精品三级| 国产成人va亚洲电影| 91精品网站| 国产蜜臀在线| 麻豆一区二区99久久久久| 韩国一区二区av| 亚洲福利一区二区三区| 欧美日韩尤物久久| 91精品啪在线观看国产60岁| 欧美日韩国产中文| 国产福利久久| 国产福利免费在线观看| 日韩精品第一区| 国产三级视频网站| 日韩一级二级三级| 日韩精品在线免费播放| 欧美区高清在线| www.三级.com|