預處理命令

2021-08-15 18:07:55 字數 685 閱讀 6883

在c程式中的「預處理命令」,是由ansi c規定的,但不屬於c語言的組成部分,因為編譯程式不能識別他們,所以並不能直接對它們編譯。在編譯之前,程式需要對這些特殊的命令做些「預處理」。

#define r 3

#define pi 3.14

#define s 2 * pi * r

#define l pi * r * r

(5)對雙撇號裡括起來的字串裡的字元,即使與巨集名相同,也不進行置換。

(6)巨集定義只進行置換,不分配記憶體空間。

#ifdef識別符號

程式段1

#else

程式段2

#endif

他的作用是若指定的識別符號已經被定義過,則在程式編譯階段編譯程式段1, 否則編譯程式段2。

#ifndef識別符號

程式段1

#else

程式段2

#endif

這種的作用是若識別符號未被定義過,編譯程式段1,否則編譯程式段2。與上面那個作用完全相反。

#if 表示式

程式段1

#else

程式段2

#endif

這種作用是當指定表示式為真時編譯程式段1,否則編譯程式段2。

預處理命令

和 操作符是和 define 巨集使用的.使用 使在 後的首個引數返回為乙個帶引號的字串.例如,命令 define to string s s將會使編譯器把以下命令 cout to string hello world endl 理解為 cout hello world endl 使用 鏈結 前後的...

預處理命令

我們可以在c源程式中插入傳給編譯程式的各中指令,這些指令被稱為預處理器指令,它們擴充了程式設計的環境。現把常用的預處理命令總結如下 1.預處理程式 按照ansi標準的定義,預處理程式應該處理以下指令 if ifdef ifndef else elif endif define undef line ...

預處理命令

ansi c標準規定可以在c源程式中加入一些 預處理命令 來改進程式設計環境,提高程式設計效率。這些預處理指令都是由ansi c統一規定的,但是它並不是c語言本身的組成部分,不能直接對其進行編譯。c語言和其它高階程式語言的乙個重要區別就是可以使用預處理指令和它的預處理功能。預處理是指由預處理程式負責...