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