天天看點

用宏定義替代簡單的自定義函數

是以它的重要性不得而知

首先我們得知道預編譯又叫預處理。預編譯不是編譯,而是編譯前的處理。這個操作是在正式編譯之前由系統自動完成的。

首先我們來複習一下宏定義基本用法:

#define//切記不能再後面加分号
以下是我在百度百科裡面找到的相關内容
#define
帶參宏定義的一般形式為:
#define      

C語言中,可以用 #define 定義一個辨別符來表示一個常量。

其特點是:定義的辨別符不占記憶體,隻是一個臨時的符号,預編譯後這個符号就不存在了。

有時候在遇到一些簡單的函數操作時我們可以使用宏定義去替換某些自定義函數

比如下面這個找兩個數中較大的數

//利用自定義函數
實作int max( int num1, int num2)
{
  return (num1 > num2 ? num1 : num2);
}      
#include<stdio.h>
#define//如果x>y,那麼MAX(x,y)的值就是x,否則就是y
int main()
{
    int a,b,max;
    scanf("%d %d ",&a,&b);                 //調用函數輸出最大值
    max=MAX(a,b);                          //依次比較
    printf("%d",max);    
    return 0;
}      
#define      

未完待續等我學的再深入再回來補充