สถิติผู้เข้าเยี่ยมชมเว็บไซต์

ตัวแปรในภาษาซี

 

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

ผ่านชื่อของตัวแปรที่เก็บเอาไว้

 

ชนิดของข้อมูล
        ภาษาซีเป็นอีกภาษาหนึ่งที่มีชนิดของข้อมูลให้ใช้งานหลายอย่างด้วยกัน ซึ่งชนิดของข้อมูลแต่ละอย่างมีขนาดเนื้อที่

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

ก็ควรจะคำนึงถึงความจำเป็นในการใช้งานด้วย สำหรับประเภทของข้อมูลมีดังนี้คือ

 

ชนิด

ขนาดความกว้าง

ช่วงของค่า

การใช้งาน

Char

8 บิต

ASCII character (-128 ถึง 127)

เก็บข้อมูลชนิดอักขระ

Unsigned char

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