1. แนะนำเบื้องต้น
ภาษา C เป็นภาษาพื้นฐานที่สำคัญสำหรับการเรียนรู้การเขียนโปรแกรม ในบรรดานี้ bool
เป็นชนิดข้อมูลที่ขาดไม่ได้ในการควบคุมโครงสร้าง เช่น การแบ่งเงื่อนไขและลูป บทความนี้จะแนะนำวิธีการใช้ bool
เบื้องต้นในภาษา C พร้อมตัวอย่างการใช้งานจริง เพื่อให้ทั้งมือใหม่และผู้มีประสบการณ์เข้าใจได้ลึกซึ้งยิ่งขึ้น
2. bool
คืออะไร
2.1 ความหมายและลักษณะเด่น
ชนิดข้อมูล bool
จะมีค่าได้เพียงสองค่า คือ จริง (true
) หรือ เท็จ (false
) ซึ่งเรียกว่าค่าลอจิก ใช้สำหรับการตัดสินใจในโปรแกรมหรือการวนลูป ในภาษา C ชนิด bool
ถูกนำมาใช้ตั้งแต่มาตรฐาน C99 ก่อนหน้านี้จะใช้ชนิดข้อมูลจำนวนเต็มแทนค่าลอจิกเหล่านี้
2.2 การใช้ bool
ในภาษา C
หากต้องการใช้ bool
ในภาษา C ต้องรวมไฟล์ส่วนหัว <stdbool.h>
เมื่อ include ไฟล์นี้แล้ว จะสามารถใช้คีย์เวิร์ด bool
, true
และ false
ได้ทันที
#include <stdbool.h>
bool isProgrammingFun = true;
bool isFishTasty = false;
ตัวแปรชนิด bool
ที่ประกาศแบบนี้จะเก็บค่า true
หรือ false
ได้
3. วิธีใช้ bool
ในภาษา C
3.1 การประกาศและกำหนดค่าเริ่มต้น
สามารถประกาศตัวแปร bool
ด้วยคีย์เวิร์ด bool
และนิยมกำหนดค่าเริ่มต้นเป็น true
หรือ false
bool isProgrammingFun = true;
bool isFishTasty = false;
จากตัวอย่างข้างต้น isProgrammingFun
จะมีค่าเป็น true
และ isFishTasty
จะมีค่าเป็น false
3.2 วิธีแสดงผลค่า bool
เมื่อจะแสดงผลค่าของ bool
ในภาษา C จะถูกแสดงเป็นจำนวนเต็ม true
จะเท่ากับ 1
และ false
จะเท่ากับ 0
จึงใช้ %d
ในฟังก์ชัน printf
printf("%d", isProgrammingFun); // แสดงค่า 1 (true)
printf("%d", isFishTasty); // แสดงค่า 0 (false)
ดังนั้นจึงควรจำไว้ว่าค่า bool
จะแสดงผลเป็น 1
และ 0
4. bool
กับโอเปอเรเตอร์เปรียบเทียบ
4.1 โอเปอเรเตอร์เปรียบเทียบพื้นฐาน
ชนิด bool
มักถูกสร้างขึ้นจากผลของโอเปอเรเตอร์เปรียบเทียบ เช่น >
, <
, ==
เป็นต้น โดยค่าที่ได้จะเป็น true
หรือ false
printf("%d", 10 > 9); // แสดงค่า 1 (true)
printf("%d", 5 == 5); // แสดงค่า 1 (true)
printf("%d", 3 < 2); // แสดงค่า 0 (false)
4.2 ตัวอย่างการใช้งานจริง
ลองดูตัวอย่างการใช้เงื่อนไขด้วยคำสั่ง if
ถ้าเงื่อนไขใน if
เป็น true
โค้ดในบล็อกนั้นจะถูกรัน
int x = 10;
int y = 9;
if (x > y) {
printf("x มีค่ามากกว่า y
");
} else {
printf("x มีค่าน้อยกว่าหรือเท่ากับ y
");
}
ในตัวอย่างนี้ x มีค่ามากกว่า y จึงแสดงผลว่า “x มีค่ามากกว่า y”

5. การใช้ bool
ในฟังก์ชัน
5.1 การใช้เป็นค่าที่ส่งกลับ
ชนิด bool
สามารถใช้เป็นค่าที่ส่งกลับจากฟังก์ชัน ตัวอย่างเช่น การตรวจสอบว่าค่าหนึ่งเป็นเลขคู่หรือไม่ สามารถใช้ bool
ได้
#include <stdbool.h>
bool isEven(int number) {
return number % 2 == 0;
}
int main() {
printf("%d
", isEven(4)); // แสดงค่า 1 (true)
printf("%d
", isEven(7)); // แสดงค่า 0 (false)
return 0;
}
ฟังก์ชันนี้จะคืนค่า true
(1) หากเลขที่ส่งเข้ามาเป็นเลขคู่ และ false
(0) หากเป็นเลขคี่
5.2 ตัวอย่างการประยุกต์ใช้
บูลีนมักใช้ตรวจสอบเงื่อนไขต่าง ๆ เช่น การตรวจสอบข้อมูลในฟอร์มหรือความปลอดภัย ตัวอย่างเช่น ตรวจสอบว่าอายุของผู้ใช้ผ่านเงื่อนไขที่กำหนดหรือไม่
bool isValidAge(int age) {
return age >= 18;
}
ฟังก์ชันนี้จะคืนค่า true
หากอายุมากกว่าหรือเท่ากับ 18 ปี
6. ตัวอย่างการประยุกต์ใช้ bool
6.1 ปัญญาประดิษฐ์และแมชชีนเลิร์นนิง
ชนิด bool
ถูกนำไปใช้ในด้าน AI และแมชชีนเลิร์นนิงเพื่อการตัดสินใจ เช่น ตรวจสอบว่าในภาพมีแมวหรือไม่ bool
จะใช้ตัดสินว่าตรงตามเงื่อนไขหรือไม่
6.2 ตัวอย่างโค้ดจริง
ตัวอย่างโค้ดสำหรับตรวจสอบอายุที่ใช้ในการเลือกตั้ง
int myAge = 25;
int votingAge = 18;
if (myAge >= votingAge) {
printf("คุณมีอายุเพียงพอสำหรับการเลือกตั้ง!
");
} else {
printf("คุณอายุยังไม่ถึงเกณฑ์สำหรับการเลือกตั้ง
");
}
ตัวอย่างนี้ myAge มากกว่า votingAge จึงแสดงข้อความว่า “คุณมีอายุเพียงพอสำหรับการเลือกตั้ง!”
7. สรุป
bool
เป็นชนิดข้อมูลที่ขาดไม่ได้สำหรับการเขียนโปรแกรมภาษา C ที่ต้องใช้เงื่อนไขหรือการวนลูป บทความนี้ได้แนะนำวิธีใช้เบื้องต้น การใช้กับโอเปอเรเตอร์เปรียบเทียบ รวมถึงการใช้งานกับฟังก์ชัน ซึ่งช่วยให้สร้างโปรแกรมที่ซับซ้อนได้มากยิ่งขึ้น