在巨集定義definepi314159中,巨集名pi代替

2021-05-17 03:23:54 字數 2234 閱讀 9016

1樓:匿名使用者

d 巨集定義是在預編譯階段,把給定的符號常量代替的字串把源程式中的該符號進行字串的替換也就是簡單的文字替換,不檢查語法錯誤

2樓:匿名使用者

#define 識別符號 字串 ;

書上的定義

3樓:青春染紅手指

巨集定義定義的是常量,是沒有資料型別的。

在巨集定義 #define pi 3.14159中,用巨集名pi代替一個 a) 單精度數 b) 雙精度數 c) 常量 d) 字串

4樓:

答案是d 編譯預處理的時候,巨集名pi將被字串「3.14159「代替,這一替換過程稱為巨集

巨集的定義格式為

#define 巨集名 字串或者字元

5樓:匿名使用者

c define是定義常量的

6樓:匿名使用者

不用我說了吧,進來看看。

在巨集定義#define pi 3.1415926中,用巨集名pi代替了一個()。

7樓:那年丶人已散盡

c語言中有明確規定,巨集定義是利用#define命令,用一個指定的標識代替一個字串。對應到題目上就是#define 識別符號 字串,所以pi是識別符號,3.1415926是字串。

所以這題選b

關於c選項,如果3.1415926不在巨集函式定義中,那麼它就是一個常量,只是因為它在#define命令中,所以它是一個字串。

a選項,單精度數是指計算機表達實數近似值的一種方式,而不是隻明確的值,故錯。

d選項,雙精度數也是值計算機表達實數近似值的一種方式,而不是隻明確的值,故錯。但是和單精度數有一點區別。具體體現在數字的範圍上。

擴充套件資料

巨集是一種預處理指令,它提供了一種機制,可以用來替換源**中的字串。

1、條件編譯:

c語言中,預處理過程讀入源**,檢查包含預處理指令的語句和巨集定義,並對源**進行相應的轉換,預處理過程還會刪除程式中的註釋和多餘的空白符號。

預處理指令是以#開頭的**行,#必須是該行除了空白字元外的第一個字元。#後是指令關鍵字,在#和指令關鍵字之間允許存在若干空白字元。

2、巨集函式:

函式的呼叫是需要一定的時間和空間代價的。因為系統在呼叫函式時,需要保留"現場",即將程式要執行的指令的下一條指令的位置壓入棧,然後轉入呼叫函式去執行,呼叫完函式後再返回主調函式,恢復"現場",返回到棧裡儲存的的下一條指令的位置繼續執行。

所以函式的呼叫需要額外的時間和空間代價。

而巨集函式則不存在上述問題,巨集函式在預編譯時,同函式定義的**來替換函式名,將函式**段嵌入到當前程式,不會產生函式呼叫。

8樓:呵呵呵呵

在#define中,標準只定義了#和##兩種操作。#用來把引數轉換成字串,##則用來連線前後兩個引數,把它們變成一個字串。

執行結果如下:

9樓:奕讓端雪

寫錯了吧。pi和3之間有個空格。

#define

pi3.14159

你的巨集沒有引數,不需要代替為()

10樓:匿名使用者

我剛剛翻了《c程式設計(第三版)》,裡面對巨集的具體定義是: #define 識別符號 字串。

。。我覺得應該果斷相信書裡面的定義

11樓:無敵理工男

c語言上有明確定義,巨集定義是利用#define命令,用一個指定的標識代替一個字串。

12樓:東方箭

在巨集定義中是沒有資料型別的,只是純粹的用 3.1415926替換pi

13樓:匿名使用者

我覺得選c,它字元常量,如果真是選b,知道後回帖。

14樓:友人改變自己

我也翻了翻書《c語言程式設計(第三版)》,面對巨集的具體定義是: #define 巨集名 替換文字,其中替換文字是一個不用雙引號引起來的一串字元(字串)。

選b妥妥的。

15樓:匿名使用者

要注意一下,如果是#define 3.14159那就是常量,但是如果有雙撇號,"3.14159"那是字串

16樓:驕子

選b.在第三版c語言,p204倒數第二段有明確的強調。

C語言的巨集定義是什麼,在C語言中巨集定義是什麼?

巨集定義又稱為巨集代換 巨集替換,簡稱 巨集 是c提供的三種預處理功能的其中一種。1 巨集名一般用大寫。2 使用巨集可提高程式的通用性和易讀性,減少不一致性,減少輸入錯誤和便於修改。例如 陣列大小常用巨集定義。3 預處理是在編譯之前的處理,而編譯工作的任務之一就是語法檢查,預處理不做語法檢查。4 巨...

在excel上什麼是巨集,在excel中「巨集」是什麼意思?有什麼作用?

在excel中,巨集是一系列的操作命令的組合,可以用來幫助你解決複雜的操作過程.巨集可以自己錄製 可以載入巨集 可以用vba編寫 完全bai 可以這樣說,巨集 是excel的精華部分du,如何錄zhi 制一個巨集呢?下面dao,我們以錄製一個版設定標題 跨列居權 中 的巨集為例,看看具體的錄製過程 ...

C中存在define的巨集定義嗎,C 中怎麼寫類似c語言的 define?

1全部 程式設計師參考 define請參見 c 前處理器指令 條件方法教程 define 使您得以定義符號,這樣,通過將該符號用作傳遞到 if 指令的表示式,該表示式將計算為 true。define symbol 其中 symbol 要定義的符號名稱。備註符號可用於指定編譯的條件。可以用 if 或 ...