ในปัญหานี้ เราต้องเขียนโปรแกรมที่จะพิมพ์ 'Tutorials Point' โดยไม่ใช้ semicolon
เราทราบกันดีว่าใน C ต้องใช้ semicolon เพื่อจบคำสั่ง และคำสั่ง print จะทำงานเมื่อมี semicolon ท้าย
ดังนั้น เพื่อพิมพ์ 'Tutorials Point' โดยไม่มี semicolon เราต้องเรียนรู้เกี่ยวกับเมธอด printf ใน C จริงๆ แล้วมันคืนค่า integer ซึ่งเป็นจำนวนตัวอักษรทั้งหมดที่ต้องการพิมพ์
Syntax
int printf(constant char *format, ...)
เมธอดนี้รับอาร์กิวเมนต์ได้ n ตัว ตัวแรกคือสตริงที่จะพิมพ์ และคืนค่าจำนวนตัวอักษรทั้งหมดที่จะพิมพ์
โดยใช้ความรู้เกี่ยวกับเมธอด printf นี้ เราสามารถพิมพ์ 'tutorials point' โดยไม่ใช้ semicolon ได้ โดยการวางคำสั่ง print ไว้ในเงื่อนไขของ conditional statement ซึ่งจะ execute empty block of code นอกจากนี้เรายังสามารถใช้ macros และ while loop ได้
มาดูแต่ละวิธีกัน
โปรแกรมพิมพ์โดยใช้ if statement
ตัวอย่าง
#include<stdio.h>
int main(){
if (!printf("Tutorails Point") )
{ }
}
ผลลัพธ์
Tutorails Point
โปรแกรมพิมพ์โดยใช้ switch statement
ตัวอย่าง
#include<stdio.h>
int main(){
switch (!printf("Tutorails Point") )
{ }
}
ผลลัพธ์
Tutorails Point
โปรแกรมพิมพ์โดยใช้ while loop
ตัวอย่าง
#include<stdio.h>
int main(){
while(!printf("Tutorails Point") )
{ }
}
ผลลัพธ์
Tutorails Point
โปรแกรมพิมพ์โดยใช้ macros
ตัวอย่าง
#include<stdio.h>
#define printstr printf("Tutorails Point")
int main(){
if (!printstr)
{ }
}
ผลลัพธ์
Tutorails Point