| การใช้คำสั่ง define  
         
          |  |  |  |   
          |  | #include <iostream.h>
#define START 0
#define END 5
#define SUM(X,Y) ((X)+(Y))
int main()
{
int one,two,three;
	one=START;
	two=END;
	three=SUM(one,two);
	cout<<one<<"\n";
	cout<<two<<"\n";
	cout<<three<<"\n";
	return 0;
	} |  |   
          |  |  |  |  [Download Code]
 ตัวอย่างนี้แสดงวิธีการใช้คำสั่ง define 
        ครับ โดยมีรูปแบบอย่างที่เห็นนะแหละครับ อันแรกคือสร้าง START ให้มีค่าเท่ากับ 
        0 แล้วก็สร้าง END ให้มีค่าเท่ากับ 5 ครับ ส่วนต่อมาเป็นการสร้างมาโครนะครับ 
        มีรูปแบบคล้ายๆฟังก์ชั่น แต่สิ่งที่จะให้ทำจะเหมือนกับการให้ค่าครับ คือ 
        เว้นวรรคแล้วเขียนต่อเลย เพื่อนๆอาจสงสัยว่าทำไมผมต้องเขียน ((X)+(Y)) ด้วย 
        ทำไมไม่เขียนแค่ X+Y ล่ะ นี่ล่ะครับคือจุดสำคัญ เพราะถ้าหากเราเขียนแค่ x+y 
        ข้อผิดพลาดอาจเกิดขึ้นได้ครับ เวลาเขียนก็ให้เขียนวงเล็บกั้นไว้ให้หมดนะครับ 
        อย่าลืมนะครับว่า START กับ start เป็นคนละตัวกันครับ 
 
         
          |  |  |  |   
          |  | #include <iostream.h>
#define ONE
#define TWO
int main()
{
#ifdef ONE
	int index;
#else
	char name;
#endif
#ifndef TWO
	int dd;
#endif
	index=5;
	cout<<index<<"\n";
	return 0;
} |  |   
          |  |  |  |  [Download Code]
 ตัวอย่างนี้มีคำสั่งเพิ่มขึ้นมาสองคำสั่งนะครับ 
        นั่นก็คือ #ifdef เป็นคำสั่งที่ใช้ตรวจว่ามีการ define ตัวแปรไว้หรือไม่ 
        ในตัวอย่างก็คือตรวจว่ามีการ define one หรือไม่ ถ้ามีก็ให้สร้างตัวแปร index 
        ถ้าไม่มีก็ให้สร้างตัวแปร name แทน โดยใช้ #else ครั แล้วก็จบด้วย #endif 
        ครับ ส่วนคำสั่งที่สองก็คือ #ifndef มีความหมายตรงข้ามกับ 
        #ifdef คืออันนี้จะตรวจสอบว่าไม่มีการ define ไว้ เหมือนในตัวอย่าง คือ หากไม่มีการ 
        define TWO มันก็จะสร้าง dd ขึ้นมา แต่เรามีการ define TWO ไว้ คำสั่งในนี้ก็จะถูกข้ามไปครับ คำสั่ง #ifndef นิยมใช้ก่อนคำสั่ง 
        #define เพื่อที่จะตรวจสอบว่ามีการ define ไว้หรือไม่ ถ้าไม่มีก็ให้ define 
        ซะ เช่น #ifndef START#define START
 บทนี้สั้นๆ ไม่มีอะไรมากแต่สำคัญนะครับ 
        เพราะในโปรแกรมใหญ่ๆ เราจะเห็นคำสั่งพวกนี้อยู่เสมอครับ |