c裡面define問題,在C 中 define的作用是什麼?

2022-02-16 16:19:20 字數 1045 閱讀 4992

1樓:

提前定義,在當前名稱空間都可以用

在c++中#define的作用是什麼?

2樓:匿名使用者

更正一下樓上的:

#define 是巨集定義,定義一個全域性變數,在整個檔案中都可以使用。

如 #define a 3

即認為a 等同於3

int d=10%a;//等同於 int d=10%3;

結果得 d = 1

3樓:匿名使用者

巨集定義比如說#define a b;

意思就是說當程式中遇到a的時候,將a替換為b

4樓:匿名使用者

#define a b

的意思是

在下面的程式裡面

所有的a都替換成b

這完全是字元替換

所以使用的時候要小心

如果你#define a x+y

後面用a*a的時候

就會替換為x+y*x+y

而不是(x+y)*(x+y)

c++ 中 #define 常量的問題

5樓:匿名使用者

被包含在""之間的內容,也就是字串,在預處理中不會參與巨集替換

6樓:匿名使用者

cout<<"in fun() "<

c++中define用法有所瞭解,但經常會看到庫裡面有時會寫一大堆的單行的define定義

7樓:o貓尾控

這些巨集編譯的時候直接會被刪掉,編譯的時候什麼都不是。它們的意義簡單說就是讓能寫這些東西,不會造成編譯錯誤。

這是微軟的一種叫sal,source code annotation language,的東西,作用有兩個:第一是給人看的,明確一些**的意義,比如最常見的標記函式形參是用來輸出的還是用來輸入的;第二是給分析工具用的,用來檢測符合語法但是存在邏輯錯誤的**。

C 語言問題在C 6 0中執行

1全部錯誤的!照你的寫法應該是 ma 1 a b 1 a b 1 a b 1 1 1 2 1 1 2 1 8巨集定義可以理解為替換,即原封不動的照搬 如果你想實現的是ma 1 a b 1 a b 1 a b 1 的話就必須寫成 ma x x x 1 如果你想實現的是ma 1 a b 1 a b 1 ...

c語言程式設計問題在C語言程式設計中應該注意哪些問題

1.程式設計在一個已知字串中查詢最長單詞,假定字串中只含有字母和空格,空格用來分割不同單詞!方法一 vc 6.0 編譯通過 include void main if max include void main int i 0,j 0,max 0 while p i j 0 i 0 max strle...

C中怎樣寫巨集定義,C中define巨集定義各種用法含特殊,小舉個例子,謝謝

巨集定義,就 抄我的理解就是bai替換。舉個例子 du define ip 3.1415 編譯執行時只把ip 換成 zhi3.1415 define add x,y x y 如果我們使用時 4 add 2,2 結果翻譯成4 2 2 dao改變一下 define add x,y x y 4 add 2...