ตัวแปร ในภาษา C มี กี่ ชนิด อะไร บ้าง

2 การดู

ในภาษา C มีตัวแปร 4 ชนิด ได้แก่:

  • ตัวอักษร (char)
  • จำนวนเต็ม (int)
  • ทศนิยม (float)
  • ค่าความจริง (bool)
ข้อเสนอแนะ 0 การถูกใจ

พลิกมุมมองความเข้าใจตัวแปรในภาษา C: มากกว่าแค่ 4 ชนิดพื้นฐาน

บทความมากมายกล่าวถึงตัวแปรในภาษา C เพียงแค่ 4 ชนิดหลักๆ ได้แก่ char, int, float, และ bool แต่ความจริงแล้ว การแบ่งประเภทตัวแปรใน C นั้นซับซ้อนกว่านั้น และการเข้าใจอย่างถ่องแท้จะช่วยให้เขียนโปรแกรมได้มีประสิทธิภาพมากขึ้น บทความนี้จะพาคุณไปขุดลึกลงไปในรายละเอียดที่อาจถูกมองข้าม เพื่อให้คุณมองเห็นภาพที่ชัดเจนและครบถ้วนยิ่งขึ้น

ใช่แล้ว char, int, float, และ (ในมาตรฐาน C99 ขึ้นไป) bool เป็นชนิดข้อมูลพื้นฐานที่เราใช้บ่อยที่สุด แต่เราสามารถมองพวกมันได้ในมุมที่กว้างกว่านั้น โดยพิจารณาจากขนาดของหน่วยความจำที่ใช้ ช่วงค่าที่เก็บได้ และการนำไปใช้งานจริง

1. ตัวแปรพื้นฐาน (Fundamental Data Types): นี่คือกลุ่มที่เราคุ้นเคยกันดีที่สุด ประกอบด้วย:

  • char: เก็บตัวอักษร ตัวเลข หรือสัญลักษณ์ ASCII โดยใช้ 1 ไบต์ (8 บิต) ช่วงค่าโดยทั่วไปอยู่ที่ -128 ถึง 127 หรือ 0 ถึง 255 ขึ้นอยู่กับการใช้งานแบบ signed หรือ unsigned

  • int: เก็บจำนวนเต็ม ขนาดขึ้นอยู่กับระบบปฏิบัติการ โดยทั่วไป 4 ไบต์ (32 บิต) แต่สามารถเป็น 2 ไบต์ หรือ 8 ไบต์ ก็ได้ ช่วงค่าจึงมีความหลากหลาย เช่น -2,147,483,648 ถึง 2,147,483,647 สำหรับ int ที่เป็น 4 ไบต์ signed

  • float: เก็บจำนวนทศนิยม โดยทั่วไปใช้ 4 ไบต์ (32 บิต) ความแม่นยำจำกัด

  • double: เก็บจำนวนทศนิยม มีความแม่นยำสูงกว่า float โดยทั่วไปใช้ 8 ไบต์ (64 บิต)

  • long double: เก็บจำนวนทศนิยม มีความแม่นยำสูงที่สุด ขนาดอาจแตกต่างกันไปขึ้นอยู่กับ compiler และ architecture

  • bool (C99 ขึ้นไป): เก็บค่าความจริง เป็น true หรือ false โดยทั่วไปใช้ 1 ไบต์ แต่ขนาดอาจแตกต่างกันไป

2. ตัวแปรที่ได้จากการกำหนดชนิดเอง (Derived Data Types): เราสามารถสร้างชนิดข้อมูลใหม่จากชนิดข้อมูลพื้นฐานเหล่านี้ เช่น:

  • arrays (อาเรย์): ลำดับของตัวแปรชนิดเดียวกัน

  • pointers (ตัวชี้): เก็บที่อยู่หน่วยความจำของตัวแปรอื่น

  • structures (โครงสร้าง): กลุ่มตัวแปรชนิดต่างๆ รวมกันเป็นหน่วยเดียว

  • unions (ยูเนี่ยน): เก็บตัวแปรชนิดต่างๆ แต่ใช้พื้นที่หน่วยความจำเท่ากับชนิดข้อมูลที่ใหญ่ที่สุดในกลุ่ม

  • enums (การแจงนับ): กำหนดชื่อให้กับค่าคงที่จำนวนเต็ม

3. ตัวแปรที่ซับซ้อนขึ้น (More Complex Data Types): นอกเหนือจากที่กล่าวไปแล้ว ยังมีชนิดข้อมูลที่ซับซ้อนยิ่งขึ้นที่มักใช้ในโปรแกรมขนาดใหญ่หรือการเขียนโปรแกรมขั้นสูง เช่น

  • typedef: ใช้ในการสร้างชื่อใหม่ให้กับชนิดข้อมูลที่มีอยู่แล้ว

  • void: ใช้แทนชนิดข้อมูลที่ไม่มีค่า

ดังนั้น การกล่าวว่าตัวแปรในภาษา C มีเพียง 4 ชนิดนั้นไม่ครบถ้วน ความหลากหลายและความสามารถในการสร้างชนิดข้อมูลใหม่ๆ ทำให้ภาษา C มีความยืดหยุ่นและทรงพลัง การเข้าใจรายละเอียดเหล่านี้จะช่วยให้เราเขียนโปรแกรมได้อย่างมีประสิทธิภาพและเลือกใช้ชนิดข้อมูลที่เหมาะสมกับงานได้ดียิ่งขึ้น และที่สำคัญ คือ เข้าใจถึงการใช้หน่วยความจำอย่างมีประสิทธิภาพ ซึ่งเป็นสิ่งสำคัญยิ่งในด้านการเขียนโปรแกรม โดยเฉพาะโปรแกรมที่ต้องจัดการกับข้อมูลขนาดใหญ่ หรือระบบที่มีทรัพยากรจำกัด