ตัวแปรในภาษาซี
ตัวแปร (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 <stdio.h> |
|
| 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 |
H-o-M-e
ครูขวัญจิตร สุวรรณวงศ์
สาระคอมพิวเตอร์ โรงเรียนลำปางกัลยาณี
www.lks.ac.th/kuanjit
e-mail : suwannawongse@hotmail.com |