ปกติ

Download Report

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 ตัว