1樓:匿名使用者
源**確實是多檔案的。不過編譯好的目標**在執行期調入記憶體後就無所謂檔案的概念了,然而不同**段之間的界限仍然存在。
模組化主要有以下幾個優點:
1.便於複用**。通用性強的重複的功能只要寫一遍就可以了,下次要用在其它程式上時只要更改很小的部分或者可以不用更改。
2.便於多人協作。在設計軟體之初就可以很清楚地分配各個開發部門的任務。
模組的編寫者本身只要關注他所寫的東西,清楚這一部分的功能,留出介面就可以了。另外,對於整個工程的負責人而言,這樣會方便瀏覽全域性的工作進度,統籌人員安排。
3.便於修改和維護。如果能確定只是某個模組有問題,在模組內解決即可,不需要牽一髮而動全身。要升級某一部分的功能,可以只針對具體的模組重新開發,節約成本。
其實不只是c語言,許多其它語言也經常使用這種方法。開發大型軟體時這種方法非常有效(否則不明顯,或者反而有***)。對於軟體設計來說這不僅僅是一種風格,而是一種方法學了。
宣告include包含的函式是宣告外部函式,只是extern關鍵字可以省略。
宣告後直接呼叫就可以了。
----
[原創回答團]
2樓:匿名使用者
實際工作中,源**檔案是要給你的工作同伴看的,你都寫到一個檔案裡,亂七八糟一大堆讓別人怎麼看,肯定要按照不同的功能劃分,寫到不同檔案中.
3樓:海盜禪杖
便於修改,除錯,層次清晰。
4樓:匿名使用者
多檔案的除了在修改上方便外
和都放在一個檔案在有區別嗎????
當然有區別了,多檔案的是將一個複雜的問題分成若干個簡單的,分別寫在一個個檔案當中,就如word,有輸入、儲存、輸出等環節,可以是輸入一個檔案或在輸入中再分成幾個檔案,這樣子以後的好處就是程式設計較容易,可以一個人負責一個檔案,然後將程式連起來(這個比較專業),出現錯誤了容易發現,如不能儲存了就找儲存那個檔案的程式就行了,增強了可讀性,如果是一個檔案,程式冗長難以實現多檔案的優越性。。我大一學的c語言,現在在學c ++,呵呵,加油
c語言中,如何用多個檔案編寫程式
5樓:匿名使用者
將一個函式寫在一個檔案裡,然後再在另一個檔案裡用「include」包含這個檔案。舉個例子 在檔案c1.c裡編一個函式:
void printword()
再建立一個檔案c2.c,檔案開頭寫上#include"c1.c",就可以呼叫c1.c裡的函式printword()了
6樓:匿名使用者
舉個簡單的例子!你會容易理解的。
你寫一個stack.h的標頭檔案,裡面宣告幾個函式原形:
stack.h
#ifndef stack_h
#define stack_h
extern void push(char);
extern char pop(void);
extern int is_empty(void);
#endif
你可以在其相應的stack.c中對這些函式進行實現stack.c
#include "stack.h"
void push(char)
char pop(void)
int is_empty(void)
在main.c中你可以這樣寫
#include
#include "stack.h"
int main()
大致格式就是這樣,在stack.h(這個名字你可以隨便定),在這個標頭檔案中宣告函式原形,在相應的stack.c中進行函式定義與實現,主程式檔案中包含這個標頭檔案之後就可以呼叫stack.
h中宣告的函式,編譯後無錯誤即可執行,你可以試試。
兄弟我可是一個字一個字的打上去的,不是貼上的。
c語言、c++:關於多檔案程式設計
7樓:匿名使用者
你如果是用編譯器自動生成的檔案,編譯器自動加到專案裡,自己寫的,你要手動在專案中新增檔案,編譯器才會檢索,編譯器只檢索屬於專案的檔案
1,.c或者.cpp不需要包含,如果你是用vs系列,.h和.cpp是一對的,你包含了x.h就是能使用x.cpp的資源、你自己想包含的話那也無所謂,一般是編譯器做的
2 .h可以新增實現,一切都可以新增。但是為了**的隱藏和符合程式設計的機制,一般都放到對應的.cpp。簡短的函式可以直接放在.h,你自己找起來也方便
3.包含了.h就能直接使用對應的.
c。專案中這種事情一般讓編譯器去實現。其實編譯的時候,編譯器會自動檢索所有檔案,只要你有宣告,實現不管你寫在哪,編譯器都會找到的,寫在對應的.
h和.cpp是為了方便和規範的需要
8樓:匿名使用者
第一 不行
第二 為了方便 因為每次都要在原始檔中加入這樣會不方便的,如果,在.h檔案宣告 那麼 直接包含標頭檔案就可以啦! 這個不是必須的 但是符合軟體工程思想 這個是標準吧!
第三 這個是函式宣告的作用 宣告為了證明有這個函式 至於這個函式在別的地方啊!
c語言多檔案程式設計
9樓:匿名使用者
多個.c檔案利於**的重複利用、模組化程式設計,保持每個檔案中**不過長,利於除錯,可分段優化編譯等
多個main函式當然要去掉,一般你使用其他人編的程式可以利用他們的函式,而要將main函式改寫或去除重寫
把這些可用的.c檔案複製、新增到你自己的目錄、自己的工程,還要新增這些.c檔案中包含函式的.h檔案,以便在呼叫函式之前引用
一般extern共享全域性變數
10樓:馮老師(必果學院
多個c檔案的作用在於將不同功能的**分開來實現,這樣便於**重用、**編譯和**管理。
一個程式中,只能有一個main函式,這是整個程式的起點和入口。如果其他人也實現了該函式,則必須要重新命名,然後在唯一的main函式中統一呼叫。
多個c檔案的合併並沒有順序要求,任何一個都可以先編譯或者後編譯。
extern表示匯出,可以用於函式和變數。用於函式的時候,表示這是一個外部函式,用於變數的時候,表示這是一個外部變數。
如果使用一個c檔案,多個h檔案,則會導致改動**任何一個地方,都要重新編譯所有的檔案,效率上非常不划算。而使用多個c檔案,當**發生變更的時候,僅僅相關的c檔案**需要重新編譯,其他**則可以保持不變,不用參與編譯。
函式中的區域性變數無法在函式外部呼叫,只能通過引數傳遞的方式傳遞給第三方函式。因為區域性變數是出於棧上面的,棧會隨著函式呼叫完畢的時候被系統**。
11樓:
多個.c檔案使你的程式具有更好的閱讀性,而且一個.c對應自己的一個在自己檔案的作用域,用extern可以將全域性變數宣告拓展出去,你在一個.
c檔案裡面宣告的變數無論是不是全域性還是constant、static、區域性,都只在自己的檔案的作用域裡面,用extern可以宣告到其他的.c裡面。編譯的時候是按照先分開編譯一個一個.
c檔案生成對應的一個個obj中間檔案,然後再根據包含的標頭檔案進行連線。
c 程式語言,什麼是C 程式語言
只列和專業相關的課程,具體順序可能有誤,畢竟畢業太久了.大一 電腦科學 講述現代計算機系統的一些基礎知識 pascal 一門規範性非常強的程式語言,是dephi使用的語言.先學習規範性強的語言,對以後學習c,c 有很大幫助,畢竟c的隨意性太強了.c語言 不多說了 計算機組成原理 硬體的基礎知識,硬體...
c語言程式設計題,為什麼選a呢,c語言程式設計題,為什麼選A呢?
wdream龍 圖中是一個a?b c選擇表示式,a若為真,整個表示式的值就為b,a為假,表示式的值就為c,題目中應該是一個a?b c?d e的巢狀表示式,當a為真時,將b的值賦給y,a為假,再判斷c,若為真,將d賦給y,為假就將e賦給y,這樣你比較一下選擇項中的式子的功能就知道了,最好能夠在軟體中除...
c語言程式設計為什麼會出現undefinedsymbol錯誤
兔老大米奇 當出現沒有定義的變數,或無法處理的符號時,就會出undefined symbol 錯誤,意思是沒有定義的符號。libz.so.1 usr lib64 libz.so.1 0x00002b1ecf5f3000 這種情況意味著能找到該動態庫 libz.so.1 not found 這種就是找...