คำสั่ง #define สร้าง Macro ซึ่งเป็นการเชื่อมโยงระหว่าง Identifier หรือ Parameterized Identifier กับ Token String หลังจาก Macro ถูกกำหนด Compiler สามารถแทนที่ Token String สำหรับแต่ละครั้งที่ Identifier ปรากฏใน Source File
#define identifier token-string
นี่คือวิธีที่ Preprocessor ถูกใช้ คำสั่ง #define ทำให้ Compiler แทนที่ Token String สำหรับแต่ละครั้งของ Identifier ใน Source File Identifier จะถูกแทนที่เฉพาะเมื่อมันเป็น Token นั่นคือ Identifier จะไม่ถูกแทนที่หากปรากฏใน Comment, ใน String หรือเป็นส่วนหนึ่งของ Identifier ที่ยาวกว่า
ตัวอย่าง
#include <iostream>
#define MY_VAR 55
using namespace std;
int main() {
int x = 10;
cout << x + MY_VAR;
// หลัง Preprocessing นิพจน์นี้กลายเป็น: x + 55
return 0;
}
ผลลัพธ์
จะให้ผลลัพธ์:
65
คุณสามารถอ่านเพิ่มเติมเกี่ยวกับคำสั่ง #define ใน MSDN: https://docs.microsoft.com/en-us/cpp/preprocessor/hash-define-directive-c-cpp