單元8 編譯預(yù)處理_第1頁
單元8 編譯預(yù)處理_第2頁
單元8 編譯預(yù)處理_第3頁
單元8 編譯預(yù)處理_第4頁
單元8 編譯預(yù)處理_第5頁
已閱讀5頁,還剩14頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

第8單元編譯預(yù)處理1宏定義2文件包含目錄CONTENTS知識拓展3

任務(wù)1:宏定義

預(yù)處理:在進行編譯的第一遍掃描(詞法掃描和語法分析)

之前所做的工作。

預(yù)處理命令:以“#”號開頭的命令。

如“#include”、“#define”等。

宏定義12無參數(shù)的宏定義帶參數(shù)的宏定義

一般形式:#define標識符

字符串#是預(yù)處理命令的標志,“define”為宏定義命令,“標識符”為所定義的宏名?!白址笨梢允浅?shù)、表達式、格式串等。

例如:#definePI3.1415926#definesum1+2無參數(shù)的宏定義宏定義是用宏名來表示一個字符串,這只是一種簡單的代換。宏定義必須寫在函數(shù)之外宏名若在源程序中用引號括起來,則預(yù)處理程序不對其做宏代換。宏定義允許嵌套

習慣上,宏名用大寫字母表示

注意事項宏定義不是說明語句,在行末不必加分號。無參數(shù)的宏定義

一般形式:#define宏名(形參表)例如:#defineAREA(R)3.14*R*R#defineSUM(X,Y)X+Y帶參數(shù)宏調(diào)用的一般形式為:

宏名(實參表)帶參數(shù)的宏定義帶參數(shù)的宏定義任務(wù)實施#defineAREA(R)3.14*R*Rmain(){floatr,s;printf(“pleaseinputtheradius:”);scanf(“%f”,&r);s=AREA(r);printf(“theareais%f”,s);}用帶參數(shù)的宏,求圓的面積。theareais12.560000pleaseinputtheradius:2.0↙運行結(jié)果宏名和形參表之間不能有空格出現(xiàn)。在宏定義中的形參是標識符,而宏調(diào)用中的實參可以是表達式。在宏定義中,字符串內(nèi)的形參通常要用括號括起來以免出錯。

習慣上,宏名用大寫字母表示

注意事項形式參數(shù)不分配內(nèi)存單元。帶參數(shù)的宏定義1用帶參數(shù)的宏,求兩數(shù)之和。測一測任務(wù)2:文件包含文件包含01#include<文件名>或

#include“文件名”02#include<stdio.h>#include“string.h”舉例一般格式包含命令中的文件名可以用雙引號括起來,也可以用尖括號括起來。1一個include命令只能指定一個被包含文件,若有多個文件要包含,則需要多個include命令。2注意事項任務(wù)3:技能訓練

【例8-3】把下列運算表達式定義為帶參的宏。

(1)求兩個數(shù)的小者。

(2)求x的絕對值。

(3)判斷x是否奇數(shù)。

(4)兩個整數(shù)交換。

如何定義?知識拓展

【例8-4】鍵盤輸入正方形的邊長a1,求其表面積S及體積V。

如何實現(xiàn)?知識拓展

【例8-4】鍵盤輸入正方形的邊長a1,求其表面積S及體積V。

源程序:#defineL(a,S,V)S=6*a*a;V=a*a*amain(){inta1,S1,V1;scanf(“%d”,&a1);L(a1,S1,V1);printf(“%d,%d,%d”,a1,S1,V1);}知識拓展PPT模板下載:/moban/行業(yè)PPT模板:/hangye/節(jié)日PPT模板:/jieri/PPT素材下載:/sucai/PPT背景圖片:/beijing/PPT圖表下載:/tubiao/優(yōu)秀PPT下載:/xiazai/PPT教程:/powerpoint/Word教程:/word/Excel教程:/excel/資料下載:/ziliao/PPT課件下載:/kejia

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論