ตัวแปรในภาษาซี
ตัวแปร (Variable) คือ การจองพื้นที่ในหน่วยความจำของคอมพิวเตอร์สำหรับเก็บข้อมูลที่ต้องใช้ในการ ทำงานของโปรแกรม โดยมีการตั้งชื่อเรียกหน่วยความจำในตำแหน่งนั้นด้วย เพื่อความสะดวกในการเรียกใช้ข้อมูล ถ้าจะใช้ข้อมูลใดก็ให้เรียกผ่านชื่อของตัวแปรที่เก็บเอาไว้
ชนิดของข้อมูล
ภาษาซีเป็นอีกภาษาหนึ่งที่มีชนิดของข้อมูลให้ใช้งานหลายอย่างด้วยกัน ซึ่งชนิดของข้อมูลแต่ละอย่างมีขนาดเนื้อที่ที่ใช้ในหน่วยความจำที่แตกต่าง กัน และเนื่องจากการที่มีขนาดที่แตกต่างกันไป ดังนั้นในการเลือกใช้งานประเภทข้อมูลก็ควรจะคำนึงถึงความจำเป็นในการใช้งาน ด้วย สำหรับประเภทของข้อมูลมีดังนี้คือ
1. ข้อมูลชนิดตัวอักษร (Character) คือข้อมูลที่เป็นรหัสแทนตัวอักษรหรือค่าจำนวนเต็มได้แก่ ตัวอักษร ตัวเลข และกลุ่มตัวอักขระพิเศษใช้พื้นที่ในการเก็บข้อมูล 1 ไบต์
2. ข้อมูลชนิดจำนวนเต็ม (Integer) คือข้อมูลที่เป็นเลขจำนวนเต็ม ได้แก่ จำนวนเต็มบวก จำนวนเต็มลบ ศูนย์ ใช้พื้นที่ในการเก็บ 2 ไบต์
3. ข้อมูลชนิดจำนวนเต็มที่มีขนาด 2 เท่า (Long Integer) คือข้อมูลที่มีเลขเป็นจำนวนเต็ม ใช้พื้นที่ 4 ไบต์
4. ข้อมูลชนิดเลขทศนิยม (Float) คือข้อมูลที่เป็นเลขทศนิยม ขนาด 4 ไบต์
5. ข้อมูลชนิดเลขทศนิยมอย่างละเอียด (Double) คือข้อมูลที่เป็นเลขทศนิยม ใช้พื้นที่ในการเก็บ 8 ไบต์
ชนิด | ขนาดความกว้าง | ช่วงของค่า | การใช้งาน |
Char | 8 บิต | ASCII character (-128 ถึง 127) | เก็บข้อมูลชนิดอักขระ |
Unsignedchar | 8 บิต | 0-255 | เก็บข้อมูลอักขระแบบไม่คิดเครื่องหมาย |
Int | 16 บิต | -32768 ถึง 32767 | เก็บข้อมูลชนิดจำนวนเต็ม |
long | 32 บิต | -2147483648 ถึง 2147483649 | เก็บข้อมูลชนิดจำนวนเต็มแบบยาว |
Float | 32 บิต | 3.4E-38 ถึง 3.4E+38 หรือ ทศนิยม 6 | เก็บข้อมูลชนิดเลขทศนิยม |
Double | 64 บิต | 1.7E-308 ถึง 1.7E+308 หรือ ทศนิยม 12 | เก็บข้อมูลชนิดเลขทศนิยม |
Unsigned int | 16 บิต | 0 ถึง 65535 | เก็บข้อมูลชนิดจำนวนเต็ม ไม่คิดเครื่องหมาย |
Unsigned long | 32 บิต | 0 ถึง 4294967296 | เก็บข้อมูลชนิดจำนวนเต็มแบบยาว ไม่คิดเครื่องหมาย |
รูปแบบในการประกาศตัวแปรในภาษา C
การสร้าวตัวแปรขึ้นมาใช้งานจะเรียกว่า การประกาศตัวแปร (Variable Declaration) โดยเขียนคำสั่งให้ถูกต้องตามแบบการประกาศตัวแปร แสดงดังนี้
type name;
type : ชนิดของตัวแปร
name : ชื่อของตัวแปร ซึ่งต้องตั้งให้ถูกต้องตามหลักของภาษา C
การเขียนคำสั่งเพื่อประกาศตัวแปร ส่วนใหญ่แล้วจะเขียนไว้ในส่วนหัวของโปรแกรมก่อนฟังก์ชัน main ซึ่งการเขียนไว้ในตำแหน่งดังกล่าว จะทำให้ตัวแปรเหล่านั้นสามารถเรียกใช้จากที่ใดก็ได้ในโปรแกรม ดังตัวอย่าง
#include | |
int num; | สร้างตัวแปรชื่อ num เพื่อเก็บข้อมูลชนิดจำนวนเต็ม |
float y; | สร้างตัวแปรชื่อ y เพื่อเก็บข้อมูลชนิดเลขทศนิยม |
char n; | สร้างตัวแปรชื่อ n เพื่อเก็บข้อมูลชนิดตัวอักขระ |
void main() | |
{ | |
printf("Enter number : ") | |
scanf("%d",&num); | |
printf("Enter name : "); | |
scanf("%f",&n); | |
printf("Thank you"); | |
} |
หลักการตั้งชื่อตัวแปร
ในการประกาศสร้างตัวแปรต้องมีการกำหนดชื่อ ซึ่งชื่อนั้นไม่ใช่ว่าจะตั้งให้สื่อความหมายถึงข้อมูลที่เก็บอย่างเดียว โดยไม่คำนึงถึงอย่างอื่น เนื่องจากภาษา C มีข้อกำหนดในการตั้งชื่อตัวแปรเอาไว้ แล้วถ้าตั้งชื่อผิดหลักการเหล่านี้ โปรแกรมจะไม่สามารถทำงานได้ หลักการตั้งชื่อตัวแปรในภาษา C แสดงไว้ดังนี้
1. | ต้องขึ้นต้นด้วยตัวอักษร A-Z หรือ a-z หรือเครื่องหมาย _(Underscore) เท่านั้น |
2. | ภายในชื่อตัวแปรสามารถใช้ตัวอักษร A-Z หรือ a-z หรือตัวเลข0-9 หรือเครื่องหมาย _ |
3. | ภายในชื่อห้ามเว้นชื่องว่าง หรือใช้สัญลักษณ์นอกเหนือจากข้อ 2 |
4. | ตัวอักษรเลขหรือใหญ่มีความหมายแตกต่างกัน |
5. | ห้ามตั้งชื่อซ้ำกับคำสงวน (Reserved Word) ดังนี้ |
auto | default | float | register | struct | volatile | break |
do | far | return | switch | while | case | double |
goto | short | typedef | char | else | if | signed |
union | const | enum | int | sizeof | unsigned | continue |
extern | long | static | void |
ตัวอย่างการตั้งชื่อตัวแปรในภาษา C ทั้งที่ถูกต้องและไม่ถูกต้องตามหลักการ แสดงดังนี้
bath_room | ถูกต้อง |
n-sync | ผิดหลักการ เนื่องจากมีเครื่องหมาย - ปรากฎในชื่อ |
108dots | ผิดหลักการ เนื่องจากขึ้นต้นด้วยตัวเลข |
Year# | ผิดหลักการ เนื่องจากมีเครื่องหมาย # อยู่ในชื่อ |
_good | ถูกต้อง |
goto | ผิดหลักการ เนื่องจากเป็นคำสงวน |
work | ถูกต้อง |
break | ผิดหลักการ เนื่องจากเป็นคำสงวน |
ตัวแปรสำหรับข้อความ
ในภาษา C ไม่มีการกำหนดชนิดของตัวแปรสำหรับข้อความโดยตรง แต่จะใช้การกำหนดชนิดของตัวแปรอักขระ (char) ร่วมกับการกำหนดขนาดแทน และจะเรียกตัวแปรสำหรับเก้บข้อความว่า ตัวแปรสตริง (string) รูปแบบการประกาศตัวแปรสตริงแสดงได้ดังนี้
char name[n] = "str";
name | ชื่อของตัวแปร |
n | ขนาดของข้อความ หรือจำนวนอักขระในข้อความ |
str | ข้อความเริ่มต้นที่จะกำหนดให้กับตัวแปรซึ่งต้องเขียนไว้ภายในเครื่องหมาย " " |
ตัวอย่างการประกาศตัวแปรสำหรับเก็บข้อความ แสดงได้ดังนี้
char name[5] = "kwan" ; | สร้างตัวแปร name สำหรับเก็บ ข้อความ kwan ซึ่งมี 4 ตัวอักษร ดังนั้น name ต้องมีขนาด 5 |
char year[5] = "2549"; | สร้างตัวแปร year สำหรับเก็บ ข้อความ 2549 ซึ่งมี 4 ตัวอักษร ดังนั้น year ต้องมีขนาด 5 |
char product_id[4] = "A01"; | สร้างตัวแปร product_id สำหรับเก็บ ข้อความ A01 ซึ่งมี 3 ตัวอักษร ดังนั้น product_id ต้องมีขนาด 4 |
4 ความคิดเห็น:
เหมือนได้อ่านในหนังสือเย้ย คิคิ
คุ้นๆเนอะ
เหมือนที่จานกั๊มสอนเลย
ดีจะได้ไม่ต้องไปหาอีก มีรายละเอียดในนี้ครบเลย
ยังไงยังไง...
ก็ไม่เข้าใจอยู่ดี
555+
ล้อเล่น
ช่วยได้เยอะเลย
แสดงความคิดเห็น