預編譯什麼用
㈠ VC++里的 預編譯頭 是什麼意思,幹嘛用的
一、什麼是預編譯頭?
預編譯頭物理上與通常的的.obj文件是一樣的,但編譯入預編譯頭的.h,.c,.cpp文件在整個編譯過程中,只編譯一次,如預編譯頭所涉及的部分不發生改變的話,在隨後的編譯過程中此部分不重新進行編譯。進而大大提高編譯速度,並便於對頭文件進行管理,也有助於杜絕重復包含問題。
二、什麼時候使用預編譯頭?
當大多.c或.cpp文件都需要相同的頭文件時。
當某些代碼被大量重復使用時。
當導入某些不同庫都有實現的函數,並產生混亂時。
㈡ 如何使用VC的預編譯技術
1、預編譯:就是編譯器首先編譯某個文件(稱為預編譯頭文件),然後將這個編譯結果保存起來,之後如果有其他源文件include了這個「預編譯頭文件」的時候,則自動從這個編譯結果提取需要的信息進行編譯。
2、預編譯結果文件(Precompiled header file):就是那個用來保存已經編譯了的符號信息的文件(.PCH作為後綴)
3、生成預編譯結果文件(Create Precompiled header file):我們說源文件A通過文件B「生成預編譯結果文件」是指編譯A的時候將其中編譯B的編譯結果保存成預編譯結果文件。一般使用向導的話,A文件就是「stdafx.cpp」,B文件是「stdafx.h」。stdafx.cpp中就一行語句:
#include 「stdafx.h」
4、使用預編譯頭(Using precompiled header):我們說某個源文件(a.cpp)通過「stdafx.h」來使用預編譯結果是指編譯a.cpp的時候,如果a.cpp第一行include語句是#include 「stdafx.h」的話,那麼直接取預編譯結果文件的結果,不再重新編譯」stdafx.h」
㈢ 什麼是預編譯,有什麼作用.怎麼使用
你寫程序的時候,一開頭的那些內容#include#include#defineN100這些東西就是在預編譯的時候處理的啦。預編譯可以讓你的程序更加靈活,可配置等。例如你想寫一個程序,既能在windows下運行,又能在linux下運行,這個時候就要根據情況包含
㈣ c語言程序,預編譯的作用
我們在用c做開發的時候,有時候項目很大,所寫的程序會很長。這樣我們如果還是寫在一個文件中,會出現管理上的問題和查看上的不方便,因此我們可以分多個文件寫我們的程序,這樣把一個功能的程序寫到一個文件里,便於查看也便於管理。但是把他們合起來的時候。頭文件會多次包含預編譯,預編譯的處理就可以用來防止頭文件的重復包含和編譯。
第二,使用宏定義可以提高程序的通用性和易讀性,減少不一致性,減少輸入錯誤便於修改。展開宏也是預編譯處理中的一項功能。
還有條件編譯處理也是預處理中的一項功能。
㈤ 請問在C++語言中的預編譯指令有什麼用
把那個文件里的演算法包含到此程序,這樣此程序就可以向使用自己的函數一樣使用包含文件里的函數了。
祝你好運!
㈥ 既然預編譯只是起一個聲明的作用,為什麼不在工程中每個c文件中包含所有的頭文件呢這樣不是很方便么
預編譯的時候會把包含的頭文件展開,即把頭文件裡面的內容展開在當前文件中,如果包含所有頭文件,第一會很占空間,因為有些頭文件裡面的變數(比如有很大的數組或者什麼的)在當前這個文件並沒有用到;其次很耗時間,因為要一個個去展開;第三,撇開時間和空間消耗不說,可能會存在不同頭文件中聲明或者定義了同名變數,這樣在編譯的時候就會報錯。但是你卻很難找到錯誤,因為頭文件裡面的東西你看不見,其次還可能引起一個重復包含的問題,比如頭文件A.h包含了B.h,你在當前.c文件中如果#include"A.h" 後又#include"B.h" 的時候就會報錯了,因為你重復包含了,當然重復包含可以通過#ifdef#endif機制解決。但是你不能保證每個頭文件中都做了這樣的操作。
㈦ . 什麼是編譯預處理它的作用是什麼
編譯預處理實在編譯之前的一些准備工作,主要是常量的替換還有宏的替換(#define)。
㈧ c語言中預編譯的作用
頭文件展開;
宏替換
㈨ 請舉例說明使用方法,什麼是預編譯
預編譯就是預處理
主要是對代碼做編譯前的處理
主要處理#開始的預編譯指令
比如 #include #define指令 這種的
也就是在編譯的時候,代碼已經沒有二義性、包含關系等這種麻煩了。
㈩ visual studio 預編譯頭有什麼用
編譯器預編譯一些不容易變動的頭文件,提高整個項目的生成速度。 對於大項目使用預編譯頭可以大大減少編譯時間。