Transcript ปกติ
ตัวแปรในภาษาซี
ง30212 พืน้ ฐานการเขียนโปรแกรม
ศูนย์ คอมพิวเตอร์
โรงเรียนปลวกแดงพิทยาคม
ความหมายของตัวแปร
ตัวแปร หมายถึง ชื่อที่ใช้ในการอ้างอิงพื้นที่ใน
หน่วยความจาหลัก ที่จองไว้เก็บข้อมูล
ตัวอย่างเช่น
a = 5;
s = “rose”;
เมื่อเราต้องการใช้ขอ้ มูล 5 หรื อ rose ให้เราเรี ยกใช้
จากตัวแปร a และ s
หลักการตั้งชื่อตัวแปรในภาษาซี
กฎเกณฑ์ในการตั้งชื่อตัวแปรภาษาซีมีดงั นี้
ต้องขึ้นต้นด้วยตัวอักษร A – Z หรื อ a-z หรื อเครื่ องหมาย _
(underscore) เท่านั้น
อักขระตัวต่อไปจะเป็ น A – Z หรื อ a-z หรื อเครื่ องหมาย _
(underscore) หรื อ 0-9 และห้ามมีช่องว่าง
ตัวพิมพ์ใหญ่พิมพ์เล็กถือว่าเป็ นคนละตัวแปรกัน
ชื่อของตัวแปรในโปรแกรมเดียวกันจะซ้ ากันไม่ได้ยกเว้นจะอยูต่ ่าง
ฟังก์ชนั
ชื่อของตัวแปรจะต้องไม่ซ้ ากับคาสงวนในภาษาซี
คาสงวน (reserved word) ในภาษาซี
auto
const
default
enum
float
int
register
sizeof
struct
union
volatile
break
continue
do
extern
for
long
return
static
switch
unsigned
while
case
char
double
else
goto
if
short
signed
typedef
void
ตัวอย่ างที่ 4.1 การตั้งชื่อตัวแปรภาษาซี
hanaka
ถูกต้อง
Hi-tech
ไม่ถูกต้องเนื่องจากมีเครื่ องหมายลบ
_name
First name
const
Const
ถูกต้อง
ไม่ถูกต้องเนื่องจากมีช่องว่าง
ไม่ถูกต้องเนื่องจากเป็ นคาสงวน
ถูกต้องเนื่องจาก C ตัวใหญ่ไม่เป็ นคาสงวน
การประกาศค่ าคงที่
ค่าคงที่ในภาษาซีเป็ นค่าที่สามารถนาไปใช้ได้ตลอดโปรแกรม มี
ประโยชน์ในกรณี ที่ตอ้ งมีการใช้ค่าคงที่จานวนมากในโปรแกรม ถ้า
มีการแก้ไขจะสามารถเปลี่ยนแปลงได้ง่าย รู ปแบบการประกาศ
ค่าคงที่คือ
constconstant_type constant_name
= value;
โดยที่
const
เป็ นคาสัง่ ในการประกาศค่าคงที่
constant_type เป็ นชนิดข้อมูลของค่าคงที่
constant_name เป็ นชื่อของค่าคงที่
value
เป็ นค่าที่กาหนด
ตัวอย่ างการประกาศค่ าคงที่
const int a = 100;
หมายถึง การกาหนดให้ a มีค่าคงที่แบบจานวนเต็ม (int) โดยมี
ค่าเท่ากับ 100 เพราะฉะนั้นตลอดทั้งโปรแกรมถ้าอ้างอิงถึง a จะมี
ค่าเป็ น 100 ตลอด
การประกาศค่ าคงทีแ่ บบการใช้
preprocessor #define
#define constant_namevalue
โดยที่ #define
เป็ นคาสัง่ preprocessor
constant_name เป็ นชื่อของค่าคงที่
value
ค่าของข้อมูลที่นาไปเก็บในชื่อของค่าคงที่
ตัวอย่างเช่น #define US 35.17
หมายถึงการกาหนดให้ US มีค่าเป็ น 35.17 โปรแกรมจะทาการ
แทนที่ US ทั้งหมดที่อยูใ่ นโปรแกรมเป็ น 35.17 ก่อนที่จะทาการ
แปลโปรแกรม
การประกาศตัวแปร
รู ปแบบการประกาศตัวแปร คือ
variable_type
variable_name;
โดยที่
variable_type
เป็ นประเภทของข้อมูลที่ตอ้ งการเก็บไว้ในตัวแปร
variable_name
เป็ นชื่อของตัวแปรในกรณี ที่มีตวั แปรหลายตัวที่
เป็ นประเภทเดียวกันสามารถใช้เครื่ องหมาย, คัน่ ระหว่างตัวแปรได้
สั ญลักษณ์ ที่ใช้ ในการประกาศตัวแปร
จานวนเต็ม (integer)
ทศนิยม (float)
ตัวอักขระ (character)
ข้อความ (string)
ใช้ int
ใช้ float
ใช้ char
ใช้ char[n]
ตัวอย่ างการประกาศตัวแปร
1. ประกาศตัวแปรละ 1 บรรทัด
เช่น int a;
int b;
2. ประกาศหลายตัวแปรในบรรทัดเดียว
ตัวอย่างเช่น int a,b;
หมายถึง การประกาศให้ a และ b เป็ นตัวแปรแบบ int (จานวนเต็ม)
ซึ่งจะเก็บข้อมูลได้เฉพาะแบบจานวนเต็มเท่านั้น
การประกาศตัวแปรและกาหนดค่ าเริ่มต้ น
ให้ กบั ตัวแปร
รู ปแบบการประกาศตัวแปรและกาหนดค่าเริ่ มต้นให้กบั ตัวแปร คือ
variable_type variable_name = value;
โดยที่
variable_type
ประเภทข้อมูลที่ตอ้ งการเก็บไว้ในตัวแปร
variable_name
ชื่อตัวแปร
value
ค่าที่กาหนด
ค่าที่กาหนดจะต้องตรงกับชนิดของตัวแปรนั้นๆ
ตัวอย่ างการประกาศพร้ อมกาหนดค่ า
ตัวอย่างเช่น
int x = 5;
char a = ‘H’;
หมายถึง การประกาศตัวแปร x เป็ นตัวแปรแบบ int (จานวนเต็ม) มี
ค่าเริ่ มต้นเท่ากับ 5
การประกาศตัวแปร a เป็ นตัวแปรแบบ char (ตัวอักษร) มีค่าเริ่ มต้น
เท่ากับ ‘H’
การประกาศตัวแปรประเภทข้ อความ
มีรูปแบบคือ
char variable_name[n];
โดยที่
n
จานวนตัวแปรประเภทอักขระที่จะนามาสร้าง
เป็ นข้อความ เช่น char[11]
หมายถึงตัวแปร n เก็บข้อมูลแบบตัวอักขระทั้งหมด 10 ตัวรวมกับ
ตัว \0 รวมเป็ น 11 ตัว (ข้อมูลแบบข้อความจะต้องมีตวั \0 อยูท่ า้ ย
เสมอ)
variable_name
คือชื่อของตัวแปร
ตัวอย่ างการประกาศตัวแปรประเภทข้ อความ
char v[8]; หมายถึงการประกาศให้ v เป็ นตัวแปรแบบแถวอักษร
โดยมีขนาดทั้งหมด 8 ตัวอักษร
char m[10] = “PROGRAM”;
หมายถึงการประกาศให้ m เป็ นตัวแปรแบบแถวอักษรโดยมีขนาด
ทั้งหมด 10 ตัวอักษรโดยมีค่าเริ่ มต้นคือ PROGRAM
char s[] = “PLUAK”;
หมายถึงการประกาศตัวแปร s เป็ นตัวแปรแบบข้อความโดยจะขนาด
เท่ากับจานวนอักษรเริ่ มต้นในที่น้ ีคือ 5 บวกกับ \0 รวมเป็ น 6 ตัว
ตัวอย่ างการประกาศตัวแปรประเภทข้ อความ
char v[8]; หมายถึงการประกาศให้ v เป็ นตัวแปรแบบแถวอักษร
โดยมีขนาดทั้งหมด 8 ตัวอักษร
char m[10] = “PROGRAM”;
หมายถึงการประกาศให้ m เป็ นตัวแปรแบบแถวอักษรโดยมีขนาด
ทั้งหมด 10 ตัวอักษรโดยมีค่าเริ่ มต้นคือ PROGRAM
char s[] = “PLUAK”;
หมายถึงการประกาศตัวแปร s เป็ นตัวแปรแบบข้อความโดยจะขนาด
เท่ากับจานวนอักษรเริ่ มต้นในที่น้ ีคือ 5 บวกกับ \0 รวมเป็ น 6 ตัว