Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม C

คอมไพล์แบบมีเงื่อนไขในภาษา C คืออะไร?


ในภาษาการเขียนโปรแกรม C คำสั่งหลายคำสั่งควบคุมการรวบรวมส่วนที่เลือกของรหัสโปรแกรม ดังต่อไปนี้ −

  • #if
  • #else
  • #elif
  • #endif

รูปแบบทั่วไปของ #if เป็นดังนี้ −

#if constant_expression
   statement sequence
#endif

#else ทำงานเหมือนกับคีย์เวิร์ด C อย่างอื่น

#elif หมายถึง "else if" และสร้างเชนการคอมไพล์ if else-if

เหนือสิ่งอื่นใด #if ให้วิธีอื่นในการ "แสดงความคิดเห็น" รหัส

ตัวอย่างเช่น

#if 0
   printf("#d", total);
#endif

ที่นี่ คอมไพเลอร์จะไม่สนใจ printf("#d", total);

#ifdef และ #ifndef

#ifdef หมายถึง "หากกำหนด" และสิ้นสุดโดย #endif

#indef หมายถึง "ถ้าไม่ได้กำหนดไว้"

#undef

#undef ลบคำจำกัดความที่กำหนดไว้ก่อนหน้านี้

#line

#line เปลี่ยนเนื้อหาของ __LINE__ ซึ่งมีหมายเลขบรรทัดของโค้ดที่คอมไพล์อยู่ในปัจจุบัน และ __FILE__ ซึ่งเป็นสตริงที่มีชื่อของไฟล์ต้นฉบับที่กำลังคอมไพล์ ทั้งสองอย่างนี้เป็นตัวระบุที่กำหนดไว้ล่วงหน้าในคอมไพเลอร์

#pragma

คำสั่ง #pragma เป็นคำสั่งที่กำหนดไว้สำหรับการนำไปใช้งาน ซึ่งช่วยให้สามารถกำหนดคำสั่งต่างๆ ให้กับคอมไพเลอร์ได้

ตัวอย่าง

ต่อไปนี้เป็นโปรแกรม C เพื่อสาธิต #ifdef, #ifndef , #else และ #endif

# include <stdio.h>
# define a 10
void main(){
   #ifdef a
   printf("\n Hello I am here..");
   #endif
   #ifndef a
   printf("\n Not defined ");
   #else
   printf("\n R u There ");
   #endif
}

ผลลัพธ์

เมื่อโปรแกรมข้างต้นทำงาน มันจะให้ผลลัพธ์ดังต่อไปนี้ −

Hello I am here..
R u There