4. ชนิดขอมูล
ในการใชงานตัวแปรนั้นสิ่งสํ าคัญที่จะตองคํ านึงถึงคือขอมูลที่เก็บอยูภายในตัวแปรนั้น ขอมูลแตละชนิดมีคุณสมบัติแตกตางกันไป เชน เปนเลขจํ านวนเต็ม เปนเลขจํ านวนจริง เปนตัวอักษร เปนตน ผูเขียนโปรแกรมจะตองกํ าหนดชนิดขอมูลใหกับตัวแปรโดยสอดคลองกับขอมูลที่ตองการเก็บ ภาษาซีแบงขอมูลออกเปนชนิดตาง ๆ ซึ่งมีขนาดพื้นที่ที่ตองใชเก็บขอมูลในหนวยความจํ าแตกตางกันขึ้นอยูกับชนิดขอมูลและบริษัทผูผลิตคอมไพเลอร ซึ่งสามารถดูรายละเอียดไดจากอินคลูชไฟล limits.h และ float.h
เมื่อนํามาจัดเปนประเภทขอมูลเราสามารถแบงชนิดของขอมูลในภาษาซี
ออกเปนประเภทหลักได 3 ชนิด คือ
1. จํานวนเต็ม ไดแกขอมูลชนิด int, short, long, unsigned int, unsigned short และ unsigned long
2. จํ านวนจริง คือ ขอมูลที่เปนเลขจํ านวนจริง มีทศนิยม หรืออยูในรูปของนิพจนวิทยาศาสตร ได
แกขอมูลชนิด float และ double
3. ตัวอักขระและสตริง (String) ไดแกขอมูลชนิด char ซึ่งเก็บขอมูลได 1 อักขระ และขอมูลที่เปน
ชุดของขอมูล char (Array of char) ที่ใชเก็บสตริงซึ่งจะกลาวถึงตอไป
• รูปแบบการเขียนคาตาง ๆ ที่เปนไปไดของขอมูลแตละชนิด ไดแก
- จํานวนเต็ม กรณีเขียนเปนเลขฐาน 10 เชน 125 0 -154
กรณีเขียนเปนเลขฐาน 8 ใหขึ้นตนดวย 0 เชน 0377 0177 0000 01
กรณีเขียนเปนเลขฐาน 16 ใหขึ้นตนดวย 0x หรือ 0X เชน 0XFF 0x14 0x4B
กรณีขอมูลเปนชนิด long ใหลงทายดวย l หรือ L เชน 123L 0437l 0x4FFL
- จํานวนจริง เขียนรูปแบบทศนิยม เชน 12.524 0.1259 0.00001
เขียนรูปแบบนิพจนวิทยาศาสตร เชน 1.0E4 12.432e-4 1E-4 2E+3
กรณีขอมูลเปน float เชน 1.4321F 472.324f
กรณีขอมูลเปน double เชน 232.98D 1.2323d
- ตัวอักขระ เชน ‘a’ ‘W’ ‘\a’ ‘\t’ โดยที่อักขระใดขึ้นตนดวย \
แสดงวาเปนอักขระพิเศษ เชน ‘\a’ แทนการสงเสียง
‘\t’ แทนการยอหนา
‘\n’ แทนการขึ้นบรรทัดใหม
‘\0’ แทนคา NULL ซึ่งหมายถึงคาวาง
นอกจากนี้ยังสามารถใชในลักษณะเลขฐาน 8 และเลขฐาน 16 ไดดังนี้ ตัวอยาง
เชน ‘X’ ในตาราง ASCII ตรงกับเลขฐาน 8 คือ 130 และเลขฐาน 16 คือ 58
เขียนแทนคาคงที่อักขระไดคือ ‘\130’ และ ‘\x58’ ตามลํ าดับ
char ch1=’X’;
char ch2 = ‘\130’;
char ch3 = ‘\x58’;
ถาสั่งใหพิมพคาตัวแปร ch1 ch2 และ ch3 จะพิมพคาเดียวกันคือ X
- สตริง จะเขียนอยูในเครื่องหมาย “ เชน “Hello” โดยที่ในสตริงทุกตัวจะมีอักขระพิเศษที่
ไมสามารถมองเห็นคือ ‘\0’ หรือ NUL เปนตัวสุดทายเสมอ ในขณะที่อักขระจะจอง
พื้นที่หนวยความจํ าเพียง 1 ไบต ในตัวอยางจะไดวาเกิดการจองพื้นที่ขึ้น 6 ตัว
อักษร ตัวอยางการประกาศตัวแปรสตริง
char msg[ ] = “Hello”
ไม่มีความคิดเห็น:
แสดงความคิดเห็น