การกำหนดตัวแปรเป็นการใช้ชื่อตัวแปรแทนตำแหน่งบนหน่วยความจำ สำหรับเก็บข้อมูลระหว่างการประมวลผล ซึ่งอาจเป็นข้อมูลนำเข้า ข้อมูลที่เกิดจากการดำเนินการ หรือข้อมูลผลลัพธ์
การประกาศตัวแปร
การตั้งชื่อให้กับตัวแปรจะเป็นไปตามหลักการตั้งชื่อของภาษาซี และชื่อที่เหมาะสมควรจะเป็นชื่อที่สื่อความหมาย การประกาศตัวแปรมีรูปแบบ ดังนี้
ชนิดข้อมูล ตัวแปร1, ตัวแปร2,
,ตัวแปรn;
|
เช่น
int count; |
// ประกาศตัวแปรชื่อ count ใช้เก็บข้อมูลชนิด interger |
int m, n; |
// ประกาศตัวแปรชื่อ m และ n ใช้เก็บข้อมูลชนิด interger |
int no = 10; |
/* ประกาศตัวแปรใช้เก็บข้อมูลชนิด interger ชื่อ no และเก็บค่า 10 ไว้ในตัวแปรดังกล่าว*/ |
long number; |
// ประกาศตัวแปรชื่อ number ใช้เก็บข้อมูลชนิด long |
float percent, total; |
/* ประกาศตัวแปรชื่อ percent และ total ใช้สำหรับเก็บข้อมูลชนิด float */ |
การตั้งชื่อตัวแปร
นักเขียนโปรแกรมจะต้องตั้งชื่อให้กับตัวแปร ค่าคงที่ โปรแกรมย่อย พารามิเตอร์ และส่วนต่างๆ ของโปรแกรม กฎเกณฑ์ที่ใช้ในการตั้งชื่อของภาษาซีมีดังนี้
- ชื่อจะประกอบขึ้นจากตัวอักษร ตัวเลข และเครื่องหมายขีดเส้นใต้(underscore) เท่านั้น
- อักขระแรกของชื่อจะต้องเป็นตัวอักษร หรือเครื่องหมายขีดเส้นใต้เท่านั้น
- ตัวพิมพ์ใหญ่ และตัวพิมพ์เล็กถือเป็นตัวอักษรคนละตัวกัน เช่น Salary และ SALARY เป็นชื่อที่แตกต่างกัน เป็นต้น
- ชื่อมาตรฐาน ANSI C จะมีความยาวไม่จำกัด แต่คอมไพเลอร์ตามมาตรฐาน ANSI C จะต้องสามารถจำแนกชื่อที่แตกต่างกันได้อย่างมาก 31 อักขระแรก
- ชื่อจะต้องไม่ซ้ำกับคำสงวน
เกณฑ์พิจารณาถูกหรือผิดเพิ่มเติมจากตัวอย่างชื่อตัวแปร
- ชื่อตัวแปร ไม่สามารถใช้ตัวเลขนำหน้าได้
123var 999var 1stvar 01variable |
|
- ชื่อตัวแปร ไม่สามารถนำเครื่องหมายทางคณิตศาสตร์มาประกอบการตั้งชื่อ
*variable +string -operatior int-int |
|
- ชื่อตัวแปร ไม่สามารถนำเครื่องหมายวรรคตอน (Punctuation) มาใช้ร่วมได้
.variable string.1 op,001 "variable" |
|
- ไม่สามารถนำคำสงวนมาไช้เพื่อตั้งชื่อตัวแปร
float union default register |
|
- ชื่อตัวแปรไม่สามารถคั่นด้วยช่องว่างได้
a variable string 001 first var |
|
- ชื่อตัวแปรสามารถใช้ตัวเลขตามหลังได้
var001 string911var s001 |
|
- สามารถใช้เครื่องหมาย _ (Under Score) เชื่อมคำ เพื่อสื่อความหมายในตัวแปรได้
var_001 string_911_var tax_rate net_int |
|
- สามารถใช้ตัวอักษรตัวพิมพ์ใหญ่หรือตัวพิมพ์เล็ก ในการกำหนดชื่อตัวแปรร่วมกันได้
DO Float CHAR Char |
|
คำสงวน
คำสงวน หมายถึง คำที่สงวนไว้สำหรับเรียกใช้ตามวัตถุประสงค์ที่กำหนโดยเฉพาะ เช่น คำที่ใช้ในคำสั่งควบคุม และชนิดของข้อมูล เป็นต้น คำสงวนของภาษาซีมีดังนี้
auto |
double |
int |
struct |
break |
else |
long |
switch |
case |
enum |
register |
typedef |
char |
extern |
return |
union |
const |
float |
short |
unsigned |
continue |
for |
signed |
void |
default |
goto |
sizeof |
volatile |
do |
if |
static |
while |
|