1.3 การกำหนดตัวแปร

ตัวแปร (Variables) หมายถึง ที่เก็บข้อมูลในหน่วยความจำขณะที่โปรแกรมทำงานประกอบด้วยชื่อตัวแปรและตำแหน่งที่เก็บ แต่ในการเรียกใช้งานส่วนใหญ่จะใช้ชื่อตัวแปรเป็นหลัก

          ตัวแปรใช้เก็บข้อมูลที่มีการเรียกใช้หลายครั้ง เช่น ในการคำนวณหลายอย่าง การเปรียบเทียบข้อมูลหลายครั้ง

          ขั้นตอนการใช้ตัวแปร ประกอบด้วย

                   1.  ประกาศตัวแปร (Declare the variable)

                   2.  กำหนดค่าให้ตัวแปร (Assign the variable)

                   3.  ใช้ตัวแปร (Use the variable)

          1.  การประกาศตัวแปร (Declaration)

          การใช้ตัวแปรชื่อใดจะต้องประกาศให้ตัวแปรชื่อนั้นเป็นแบบที่สัมพันธ์กับแบบของข้อมูลที่จะใช้ โดยประกาศในตอนต้นของโปรแกรม ด้วยประโยคคำสั่งตามรูปแบบดังนี้

แบบข้อมูล  ชื่อตัวแปร ;

          ตัวอย่าง ถ้าต้องการใช้ตัวแปรชื่อ No_of_Students สำหรับเก็บข้อมูลตัวเลขจำนวนเต็มแบบ Integer เขียนคำสั่งได้ดังนี้

                                      Int No_of_Students ;

          แบบของตัวแปรที่ใช้ขึ้นอยู่กับแบบของข้อมูลและค่าข้อมูล พิจารณาได้จากตาราง 4-1 ค่าที่ใช้ได้ของข้อมูลแบบต่าง ๆ โดยดูที่ช่วงค่าข้อมูลประกอบ เช่น ถ้าข้อมูลที่ใช้เป็นแบบตัวเลขจำนวนเต็มที่มีค่าไม่เกิน 32,767 ให้เลือกแบบข้อมูลเป็น int ดังนั้น ตัวแปรก็ต้องเป็นแบบ int

          การตั้งชื่อตัวแปร (Identifier)

                   การตั้งชื่อตัวแปรมีลักษณะดังนี้

·       ต้องเริ่มด้วยตัวอักษร หรือเส้นใต้ (_)

·       ใช้เฉพาะตัวอักษร ตัวเลข หรือเส้นใต้ประกอบกัน

·       ใช้ตัวเลขอย่างเดียวไม่ได้

·       ต้องไม่มีตัวอักขระหรือเครื่องหมายอื่น

·       ถ้าเริ่มด้วยเส้นใต้ต้องตามด้วยตัวอักษรแบบตัวพิมพ์เล็กหรือตัวเลขอย่างน้อย 1 ตัว เช่น _a  _9

·       ความยาวไม่เกิน 4095 ตัวอักษร

·       ห้ามมีช่องว่าง (ใช้ตัวขีดเส้นใต้แทนช่องว่าง เช่น Name_1)

·       ควรใช้ชื่อที่สื่อความหมายว่าใช้เก็บค่าของอะไร เช่น แทนที่จะใช้ s เพื่อเก็บค่าคะแนนของนักเรียน ควรใช้ Student_Score

·       ห้ามใช้ชื่อซ้ำกับคำสงวนหลัก (Reserved Keywords)

Auto

Continue

enum

if

restrict

static

unsigned

_Complex

Break

default

extern

inline

return

struct

void

_Imaginary

case

do

float

int

short

switch

volatile

char

double

for

long

signed

typedef

while

const

else

goto

register

sizeof

union

_Bool

 

ตัวอย่าง ชื่อตัวแปรที่ใช้ได้

          Area1            height_5  New_Price   Income

ตัวอย่าง ชื่อตัวแปรที่ใช้ไม่ได้

          1A                เริ่มด้วยตัวเลขไม่ได้

          B 52             มีช่องว่างไม่ได้

          C+                ใช้เครื่องหมายไม่ได้

          long              ใช้คำสงวนไม่ได้

          In$come        ใช้อักขระไม่ได้

หมายเหตุ    1.  ชื่อตัวแปรที่ใช้ เป็นแบบ case-sensitive หมายถึง แบบตัวพิมพ์หลักและตัวพิมพ์

                    ใหญ่ถือว่าเป็นชื่อตัวแปรคนละตัว เช่น ABC และ abc

                2.  การประกาศตัวแปรแต่ละชื่อ ให้ประกาศเพียงครั้งเดียวและแบบเดียวเท่านั้น มิฉะนั้นจะ

                     เกิดความผิดพลาดขึ้น เช่น ถ้าประกาศตัวแปร Sum ซ้ำกันสองครั้ง จะเกิดความผิดพลาด

                     Error #2120 : Redeclaration of Sumpreviously declared

 

          การประกาศตัวแปรหลายตัวที่ใช้ข้อมูลแบบเดียวกัน

          ถ้าต้องการประกาศตัวแปรหลายตัวให้เป็นแบบข้อมูลเดียวกัน แทนที่จะประกาศแยกทีละตัวแต่ละบรรทัด สามารถใช้การประกาศตามรูปแบบ ดังนี้

แบบข้อมูล  ชื่อตัวแปรตัวที่ 1, ชื่อตัวแปรตัวที่ 2, ชื่อตัวแปรตัวที่ 3 ;

 

          ตัวอย่าง          float Length, Sum, Average ;

มีความหมายเช่นเดียวกันกับ       float Length ;

                                      float Sum ;

                                      float Average ;

          2. การกำหนดค่าให้ตัวแปร (Assignment)

          ตัวแปรที่ใช้ทุกตัวในภาษา C จำเป็นอย่างยิ่งที่จะต้องกำหนดค่าเนื่องจากค่าที่มีอยู่ในหน่วยความจำเดิมอาจเป็นค่าเท่าใดก็ได้

          การกำหนดค่าให้ตัวแปร ให้ใช้ประโยคคำสั่งกำหนดค่า (Assignment Statement) ซึ่งมีรูปแบบดังนี้

ชื่อตัวแปร = ค่าข้อมูล ;

          ชื่อตัวแปรจะต้องตรงกับชื่อที่ประกาศไว้ และค่าข้อมูลที่กำหนดจะต้องอยู่ในช่วงค่าข้อมูลตามแบบข้อมูลที่ประกาศไว้

          ตัวอย่าง          No_of_Students = 30; //integer

                             Student_Grade = ‘A; //Character

                             Average = 3.75 ; // Floating Point

หมายเหตุ      ถ้าประกาศตัวแปรไว้ เช่น int A ; แต่ไม่ได้กำหนดค่าให้กับตัวแปร A เมื่อทำการแปล

                  โปรแกรม ตัวแปลโปรแกรม Pelles C จะเตือนว่า

                           Warning #2114 : Local Ais not referenced

                           หมายถึง ตัวแปรชื่อ A ที่อยู่ในส่วนนี้ ไม่ได้กำหนดค่าไว้


Comments