亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? 教學--第十四章 程序的文件結構.htm

?? 很好的介紹C++的書
?? HTM
?? 第 1 頁 / 共 4 頁
字號:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0045)http://d2school.com/bcyl/bhcpp/newls/ls14.htm -->
<HTML><HEAD><TITLE>教學--第十四章 程序的文件結構</TITLE>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<STYLE type=text/css>P {
	MARGIN: 1px 2px; LINE-HEIGHT: 150%
}
.節標題 {
	FONT-WEIGHT: bold; FONT-SIZE: 12pt
}
TD {
	FONT-SIZE: 9pt
}
.tdtitle {
	FONT-SIZE: 20pt
}
.celltopline {
	BORDER-TOP: #000000 1px solid
}
.menucell {
	FONT-SIZE: 10pt
}
#glowtext {
	FONT-SIZE: 10pt; FILTER: glow(color=red,strength=1); WIDTH: 100%
}
A:link {
	FONT: 10pt 宋體; COLOR: blue; TEXT-DECORATION: none
}
A:visited {
	FONT: 10pt 宋體; COLOR: purple; TEXT-DECORATION: none
}
A:active {
	FONT: 10pt 宋體; COLOR: red; TEXT-DECORATION: underline
}
A:hover {
	COLOR: blue; TEXT-DECORATION: underline
}
</STYLE>

<META content="MSHTML 6.00.2900.2180" name=GENERATOR></HEAD>
<BODY leftMargin=0 topMargin=3>
<CENTER>
<TABLE height=154 cellSpacing=4 cellPadding=4 width=760 border=0>
  <TBODY>
  <TR>
    <TD 
    style="FONT-SIZE: 10pt; TEXT-INDENT: 20px; LINE-HEIGHT: 150%; FONT-FAMILY: 宋體" 
    width="100%" height=148>
      <H2>第十四章 程序的文件結構</H2>
      <P><A href="http://d2school.com/bcyl/bhcpp/newls/ls14.htm#14.1">14.1 
      源文件和頭文件</A></P>
      <P><A href="http://d2school.com/bcyl/bhcpp/newls/ls14.htm#14.2">14.2 
      如何創建多個單元文件</A></P>
      <P><A href="http://d2school.com/bcyl/bhcpp/newls/ls14.htm#14.3">14.3 
      如何寫頭文件</A></P>
      <P>&nbsp;&nbsp; <A 
      href="http://d2school.com/bcyl/bhcpp/newls/ls14.htm#14.3.1">14.3.1 
      在頭文件內加入函數聲明</A></P>
      <P>&nbsp;&nbsp; <A 
      href="http://d2school.com/bcyl/bhcpp/newls/ls14.htm#14.3.2">14.3.2 
      最常見的預編譯語句</A></P>
      <P><A href="http://d2school.com/bcyl/bhcpp/newls/ls14.htm#14.4">14.4 
      如何使用頭文件</A></P>
      <P><A href="http://d2school.com/bcyl/bhcpp/newls/ls14.htm#14.5">14.5 
      變量在多個源文件之間的使用</A></P>
      <P>&nbsp;&nbsp; <A 
      href="http://d2school.com/bcyl/bhcpp/newls/ls14.htm#14.5.1">14.5.1 
      變量聲明</A></P>
      <P>&nbsp;&nbsp; <A 
      href="http://d2school.com/bcyl/bhcpp/newls/ls14.htm#14.5.2">14.5.2 
      多個文件中共享變量的實例</A></P>
      <P><A href="http://d2school.com/bcyl/bhcpp/newls/ls14.htm#14.6">14.6 
      附:如何單獨生成一個頭文件</A></P>
      <P> </P>
      <P>程序是由什么組成的? 學習到今天,我們至少有兩個答案:
      <P>第1,程序由代碼語句組成。正是一行行的代碼,組成了一個完整的程序。
      <P>第2,程序由函數組成。一個個函數之間的互相調用,最終構建出一個完整的程序。</P>
      <P>今天我們又有一個新的回答:“程序由文件組成”。</P>
      <P>程序為什么需要使用多個文件?</P>
      <P>一個小的程序,可以只寫一個源文件,但程序稍微一大,就需要將其中不同的邏輯實現放到不同的源文件.對于需要多人一起開發的軟件,自然更需要多個源文件。</P>
      <P> </P>
      <H3><A name=14.1>14.1</A> 源文件和頭文件</H3>
      <P> </P>
      <P>和別的一些語言不同,C,C++的代碼文件有“頭文件”和“代碼文件”之分。二者合起來我們稱為單元<SPAN 
      lang=en-us>(Unit)</SPAN>文件。</P>
      <P> </P>
      <P>擴展名為 .c 或 .cpp 的文件,主要用以實現程序的各種功能,我們稱為代碼文件。</P>
      <P>擴展名為 .h 
      的文件,稱為頭文件。在頭文件里主要寫一些函數、數據(包括數據類型的定義)、等的聲明,這樣可以在多個.c或.cpp文件內<B>共享</B>這些函數、數據。第12章我們提過到頭文件的功能。說它可以起到函數“名片夾”的作用。</P>
      <P> </P>
      <P>大都數時候,源文件和頭文件是對應出現的,比如有一個<SPAN lang=en-us> A.cpp </SPAN>的源文件,就會有一個<SPAN 
      lang=en-us> A.h </SPAN>的頭文件。這種情況在我們寫應用程序時,更是常見。所以C++ 
      Builder對此進行了強化。比如,它支持在同名源文件和頭文件之間通過熱鍵來回切換。在CB6.0里,編輯器打開對應的源文件和頭文件時,將顯示為同一頁下的兩個子頁。</P>
      <P> </P>
      <P>我們來實際動手看看源文件與頭文件在CB里的對應關系。</P>
      <P> </P>
      <P>運行 C++ Builder 6或5。</P>
      <P>這一次我們需要一個空白的<SPAN 
      lang=en-us>Windows</SPAN>工程。很有可能,在你打開CB時,它就自動為你打開了一個工程。為了不出錯,我們還是親自建一個。CB6請使用主菜單:<SPAN 
      lang=en-us>File | New | Application</SPAN>;而CB5則使用:<SPAN lang=en-us>File | 
      New Application</SPAN> <B>新建一個<SPAN lang=en-us>Windows 
      </SPAN>空白工程</B>。<SPAN lang=en-us> </SPAN>如果在這過程中CB出現是否存盤的詢問,請回答不存盤。</P>
      <P> </P>
      <P>找到“代碼窗口”。如果你看到的是一個叫<SPAN lang=en-us>"Form1"</SPAN>的表單,請按<SPAN 
      lang=en-us>F12,</SPAN>“代碼窗口”將跑到前面。它的標題應該是默認的<SPAN 
      lang=en-us>"Unit1.cpp"</SPAN>。正是當前代碼文件的文件名。如下圖:</P>
      <P> </P>
      <P><IMG src="教學--第十四章 程序的文件結構.files/ls14.h1.gif" border=0></P>
      <P> </P>
      <P>對于CB6,還可以看到在該窗口的底部有這樣一個分頁:</P>
      <P> </P>
      <P><IMG src="教學--第十四章 程序的文件結構.files/ls14.h2.gif" border=0></P>
      <P> </P>
      <P>源文件:<SPAN lang=en-us>Unit1.cpp </SPAN>和頭文件:<SPAN lang=en-us>Unit1.h 
      </SPAN>并列著,我們可以方便地選擇。至于<SPAN lang=en-us> 
      "Diagram"</SPAN>,稱為“圖解”。這是一個給這個源文件加配套注解,及表單上各控件的依賴關系的地方。如果是一個開發小組在進行共同開發,嚴格地要求每個成員為每個單元文件寫上“<SPAN 
      lang=en-us>Diagram</SPAN>”,可以更好地實現程序員之間的溝通。</P>
      <P><SPAN lang=en-us>CB5</SPAN>沒有這些,不過下面的熱鍵操作兩個版本均一樣的,要求大家記住。</P>
      <P>按<SPAN lang=en-us> Ctrl + F6 
      </SPAN>可以在源文件和頭文件之間來回切換。請大家試試。這個簡單的操作將在我們今后的編程過程中高頻率地使用。</P>
      <P> </P>
      <H3><A name=14.2>14.2</A> 如何創建多個單元文件</H3>
      <P> </P>
      <P>前面我們在“<SPAN 
      lang=en-us>Windows</SPAN>應用程序工程”中看到了頭文件與源文件的匹配關系,在“控制臺”的工程中,也同樣存在。不過由于控制臺經常只用來寫一些小小的程序,所以往往只需一個源文件即可。由于只有一個源文件,所以也就不存在函數、數據在多個文件之間“共享”的需要,因此邊頭文件也就可以不提供。</P>
      <P> </P>
      <P>那么,是不是只有在程序很大,或者只有在有很多人同時開發一個軟件時,才需要多個源文件呢?</P>
      <P><SPAN 
      lang=zh-cn>這就好像你家里只有兩本書:《紅樓夢》和《格林童話》,是把它們放在同一個抽屜里呢?還是分開放到兩個抽屜里?我覺得后者是比較好的選擇。因為我們常常希望家里看《格林童話》的人,最好不要去看《紅樓夢》。</SPAN></P>
      <P><SPAN lang=zh-cn>程序也一樣,最好把不同的邏輯實現,放到不同的源文件中。</SPAN></P>
      <P> </P>
      <P><SPAN 
lang=zh-cn>下面我們做一個實例。例子的代碼我們都已經學過。目標是實現一個可以求統計值和平均值的程序。</SPAN></P>
      <P><SPAN lang=zh-cn>根據我們現在所學的情況,我把這個工程中的代碼分為三個源代碼:</SPAN></P>
      <P><SPAN lang=zh-cn>其一:主程序。就是</SPAN>main()<SPAN 
      lang=zh-cn>函數所在的代碼。這個源文件實現總的流程。我將該文件取為</SPAN> main.cpp<SPAN 
      lang=zh-cn>。</SPAN></P>
      <P><SPAN 
      lang=zh-cn>其二:計算總和及計算平均值的代碼。這個源文件負責用戶計算過程,也包括每個過程所需輸入輸出。該文件將被存盤為</SPAN>mainfunc.cpp<SPAN 
      lang=zh-cn>。</SPAN> <SPAN lang=zh-cn>意為主要功能。</SPAN></P>
      <P><SPAN lang=zh-cn>其三:</SPAN> assifunc.cpp<SPAN 
      lang=zh-cn>。表示輔助功能函數所在代碼。它只提供一個函數:將用戶輸入的大寫或小寫的字母</SPAN>'Y'<SPAN 
      lang=zh-cn>或</SPAN>'N' <SPAN lang=zh-cn>確保轉換為大寫。這個函數將</SPAN>main()<SPAN 
      lang=zh-cn>主函數內</SPAN>,<SPAN lang=zh-cn>判斷用戶是否繼續時用到。</SPAN></P>
      <P> </P>
      <P><SPAN lang=zh-cn>新CB新建一個控制臺程序(如果你還開著上個程序,先選</SPAN>File | Close All<SPAN 
      lang=zh-cn>關閉它)。CB會自動生成第一個文件,不過現在的名字為“</SPAN>Unit1.cpp"<SPAN 
      lang=zh-cn>。</SPAN></P>
      <P><SPAN lang=zh-cn>接下來是一項新工作,我們來添加兩人新的單元文件,即上面說的“其二”和“其三”。</SPAN></P>
      <P><SPAN lang=zh-cn>CB6 :</SPAN>File | New | Unit<SPAN 
      lang=zh-cn>;CB5:</SPAN>File | New Unit<SPAN lang=zh-cn>。</SPAN></P>
      <P><SPAN lang=zh-cn>請進行兩次以上操作,CB將為我們生成新的兩個單元文件:</SPAN>Unit2.cpp<SPAN 
      lang=zh-cn>和</SPAN>Unit3.cpp<SPAN lang=zh-cn>。大家可以再試試</SPAN> Ctrl + 
      F6<SPAN lang=zh-cn>。</SPAN>(<SPAN 
      lang=zh-cn>注意,第一個單元文件:</SPAN>Unit1.cpp<SPAN lang=zh-cn> 
      沒有配套的</SPAN>.h<SPAN lang=zh-cn>文件,所以不要在該文件里嘗試</SPAN>Ctrl + F6)<SPAN 
      lang=zh-cn>。</SPAN></P>
      <P><SPAN lang=zh-cn>然后選擇</SPAN>File | Save All<SPAN 
      lang=zh-cn>。全部存盤,最好不要存在</SPAN>CB<SPAN 
      lang=zh-cn>默認的目錄下。記得按以下關系重命名:</SPAN></P>
      <P>Unit1.cpp <SPAN lang=zh-cn>存盤為</SPAN> main.cpp<SPAN 
      lang=zh-cn>;</SPAN></P>
      <P>Unit2.cpp <SPAN lang=zh-cn>存盤為 </SPAN>mainfunc.cpp<SPAN 
      lang=zh-cn>;</SPAN></P>
      <P>Unit3.cpp <SPAN lang=zh-cn>存盤為 </SPAN>assifunc.cpp<SPAN 
      lang=zh-cn>;</SPAN></P>
      <P><SPAN lang=zh-cn>至于總的工程,隨你便,我圖方便,還是叫</SPAN>:Project1.bpr<SPAN 
      lang=zh-cn>。</SPAN></P>
      <P> </P>
      <P><IMG src="教學--第十四章 程序的文件結構.files/ls14.h1.jpg" align=left border=0><SPAN 
      lang=zh-cn>(現在我們第一次在一個工程中用到多個源文件。所以你得學會如何快速打開一個工程中某個源文件——當然,現在這三個文件都已經打開著,不過假設你有點事關閉CB,我們不希望下回打開這個工程時,你“找”不到第2和第3個文件了——請點擊CB工具欄上的這個圖標:<IMG 
      src="教學--第十四章 程序的文件結構.files/ls14.h3.gif" 
      border=0>,將出現源文件列表對話框,如左圖)</SPAN></P>
      <P> </P>
      <P> </P>
      <P>接下來講在這三個文件中,我們分別寫些什么?大多數代碼我們都已經在前面學過,所以我對代碼的功能不作太多的解釋。我們的重點是:三個源文件之間的代碼如何實現“溝通”。</P>
      <P> </P>
      <P><B>第一個文件:main.cpp</B> 用來實現程序的主流程。</P>
      <P><SPAN lang=zh-cn>在 main.cpp 中的main()函數內,我們加入代碼。</SPAN></P>
      <P> </P>
      <P>#include &lt;iostream.h&gt;</P>

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧洲国产伦久久久久久久| 洋洋成人永久网站入口| 久久爱另类一区二区小说| 欧美老人xxxx18| 日韩国产精品久久久| 日韩欧美精品在线| 国产精品一区久久久久| 中文欧美字幕免费| 99久久er热在这里只有精品15 | 天天色天天爱天天射综合| 欧美日本高清视频在线观看| 午夜精品福利一区二区蜜股av| 欧美男女性生活在线直播观看| 美女精品自拍一二三四| 久久久www成人免费无遮挡大片| 成人精品一区二区三区四区| 国产精品色在线观看| 91蜜桃传媒精品久久久一区二区| 亚洲图片欧美综合| 欧美精品一区二区三区高清aⅴ| 国产夫妻精品视频| 亚洲精品国产精华液| 制服丝袜国产精品| 成人精品小蝌蚪| 日韩黄色在线观看| 中文一区在线播放 | 欧美日韩一区二区三区四区五区| 日本亚洲天堂网| 国产区在线观看成人精品 | 欧美日韩成人在线| 国产麻豆午夜三级精品| 一级日本不卡的影视| 精品久久久久久久久久久院品网| 99久久综合国产精品| 日韩成人一级片| 欧美高清在线视频| 91麻豆精品国产综合久久久久久| 国产精品一区二区三区乱码| 亚洲已满18点击进入久久| 欧美mv日韩mv国产网站app| 91亚洲男人天堂| 国产在线播放一区三区四| 亚洲午夜精品17c| 中文在线免费一区三区高中清不卡| 91精品国产色综合久久不卡电影| 成人美女视频在线观看| 另类的小说在线视频另类成人小视频在线| 久久久久久久久岛国免费| 欧美日韩视频专区在线播放| 国产v日产∨综合v精品视频| 日本va欧美va精品发布| 一区二区三区不卡视频在线观看| 精品国产一区二区在线观看| 91成人网在线| 99精品热视频| 国产麻豆一精品一av一免费| 欧美a级一区二区| 亚洲一区成人在线| 亚洲欧美成人一区二区三区| 亚洲国产精品国自产拍av| 日韩三级视频在线观看| 欧美精选午夜久久久乱码6080| 99久久er热在这里只有精品66| 风间由美一区二区三区在线观看| 久久99精品久久久久久久久久久久| 午夜精品久久一牛影视| 一区二区三区久久久| 亚洲精品免费播放| 亚洲图片你懂的| 综合av第一页| 亚洲色图20p| 亚洲日本中文字幕区| 国产精品白丝在线| 国产精品国产a级| 亚洲色图另类专区| 一区二区久久久| 亚洲一二三四在线观看| 亚洲制服丝袜av| 视频一区国产视频| 日韩成人免费在线| 国产呦精品一区二区三区网站| 久久成人免费电影| 国产精品一区免费视频| 国产东北露脸精品视频| 成人av在线观| 色94色欧美sute亚洲线路一ni| 99久久婷婷国产精品综合| 99re视频精品| 欧美手机在线视频| 欧美一区二区三区免费观看视频| 日韩欧美你懂的| 国产日产欧美一区| 亚洲色图欧美偷拍| 香蕉加勒比综合久久| 蜜臀精品久久久久久蜜臀| 激情深爱一区二区| 丰满亚洲少妇av| 91精品福利视频| 91精品国产综合久久婷婷香蕉| 日韩精品一区二区三区蜜臀 | 国产视频一区在线播放| 国产免费成人在线视频| 亚洲欧美日韩一区二区三区在线观看| 亚洲午夜电影在线观看| 久久99国产精品久久99果冻传媒| 国产做a爰片久久毛片| 99视频精品全部免费在线| 欧美综合在线视频| 日韩久久免费av| 国产精品福利一区二区三区| 亚洲无线码一区二区三区| 久久99精品久久久久久国产越南| 成人精品免费视频| 精品视频1区2区3区| 久久综合成人精品亚洲另类欧美 | 在线看不卡av| 久久免费看少妇高潮| 亚洲欧美日韩中文播放| 看国产成人h片视频| k8久久久一区二区三区| 欧美精品久久久久久久多人混战 | 欧美电影免费观看高清完整版| 中文字幕av一区二区三区免费看| 亚洲国产精品久久艾草纯爱| 国产福利一区二区| 91精品久久久久久久99蜜桃 | 欧美在线播放高清精品| 久久综合色天天久久综合图片| 亚洲区小说区图片区qvod| 激情丁香综合五月| 欧美欧美午夜aⅴ在线观看| 国产精品女上位| 麻豆国产精品视频| 欧美三级欧美一级| 中文字幕在线播放不卡一区| 极品瑜伽女神91| 欧美日韩一区二区在线观看视频| 欧美国产日本韩| 国内外成人在线| 91精品在线免费| 一区二区三区在线免费| 国产福利91精品一区二区三区| 欧美日韩一区国产| 中文字幕中文字幕一区| 国产乱妇无码大片在线观看| 欧美三级三级三级爽爽爽| 亚洲欧洲av另类| 国产一区二区三区在线观看免费视频 | 性做久久久久久免费观看欧美| 成人午夜伦理影院| 精品999在线播放| 奇米在线7777在线精品 | 首页国产欧美日韩丝袜| 欧洲人成人精品| 国产精品盗摄一区二区三区| 国产精品综合一区二区| 精品国产第一区二区三区观看体验| 午夜视频在线观看一区二区| 色婷婷综合五月| 亚洲免费成人av| 色婷婷综合中文久久一本| 亚洲日本va午夜在线影院| 国产91色综合久久免费分享| 2023国产精品自拍| 久久爱另类一区二区小说| 精品第一国产综合精品aⅴ| 蜜臀av一区二区在线免费观看| 欧美美女网站色| 国产一区二区美女| 日韩精品资源二区在线| 日本aⅴ亚洲精品中文乱码| 欧美一区二区高清| 久久国产综合精品| 26uuu精品一区二区三区四区在线| 日本成人中文字幕| 精品欧美乱码久久久久久1区2区| 麻豆一区二区三区| 欧美精品一区二区在线播放| 国产一区二区剧情av在线| 国产亚洲成年网址在线观看| 丁香一区二区三区| 中文字幕在线不卡国产视频| 欧美性色aⅴ视频一区日韩精品| 亚洲一区二区三区中文字幕| 欧美三级韩国三级日本三斤| 亚洲国产一区二区三区| 欧美一区二区三区在线看| 久久国产婷婷国产香蕉| 亚洲国产成人在线| 在线精品视频一区二区三四| 欧美a级一区二区| 国产亚洲福利社区一区| 91久久人澡人人添人人爽欧美| 亚洲福利电影网| 久久久久青草大香线综合精品| 成人av手机在线观看| 亚洲综合区在线| 精品精品欲导航| 99re在线精品| 蜜臀av在线播放一区二区三区|