•การประกาศตัวแปรมี 2 ลักษณะได้แก่ตัวแปรโกบอล และ ตัวแปรโลคอล ซึ่งมีรูปแบบการประกาศตัวแปรที่เหมือนกัน แต่จะมีคุณสมบัติต่างกัน โดยจะเห็นได้ชัดเจนเมื่อมีการสร้างฟังก์ชันมาใช้งาน
•เนื้อหาส่วนต้น จะใช้งานเฉพาะตัวแปรชนิดโลคอล โดยจะประการตัวแปรในส่วนเริ่มต้นของฟังก์ชัน
• เป็นพารามิเตอร์ที่ใช้งานในภาษาซี เพื่อกำหนดลักษณะฟังก์ชันต้นแบบ และ ตัวแปรที่ใช้งานในโปรแกรม มี 4 ชนิด
void ข้อมูลชนิดว่างเปล่า
int ข้อมูลชนิดจำนวนเต็ม
float ข้อมูลชนิดจำนวนทศนิยม
char ข้อมูลชนิดอักขระ
ข้อมูลชนิดว่างเปล่า / void
void เป็นพารามิเตอร์ที่ใช้งานในส่วนของ ฟังก์ชันโพรโทรไทพ์ การสร้างและใช้งานฟังก์ชัน เพื่อแสดงให้รู้ว่าฟังก์ชันที่สร้างขึ้นมาไม่มีการส่ง หรือรับค่าจากการเรียกใช้งานฟังก์ชัน
ข้อมูลชนิดจำนวนเต็ม / integer
int เป็นพารามิเตอร์หลักที่ใช้กับข้อมูลชนิดจำนวนเต็ม โดยมีการใช้งาน
5 รูปแบบดังนี้
unsigned int ข้อมูลชนิดจำนวนเต็มไม่คิดเครื่องหมายขนาด 2 bytes
short int ข้อมูลชนิดจำนวนเต็มขนาด 2 bytes
int ข้อมูลชนิดจำนวนเต็มขนาด 2 bytes
unsigned long ข้อมูลชนิดจำนวนเต็มไม่คิดเครื่องหมายขนาด 4 bytes
long ข้อมูลชนิดจำนวนเต็มขนาด 4 bytes
ข้อมูลชนิดจำนวนทศนิยม / float
float เป็นพารามิเตอร์หลักที่ใช้กับข้อมูลชนิดจำนวนทศนิยมโดยมีการใช้งาน 3 รูปแบบดังนี้
float ข้อมูลชนิดจำนวนทศนิยมขนาด 4 byte
double ข้อมูลชนิดจำนวนทศนิยมขนาด 8 byte
long double ข้อมูลชนิดจำนวนทศนิยมขนาด 10 byte
ข้อมูลชนิดอักขระ / character
char เป็นพารามิเตอร์ที่ใช้งานเกี่ยวกับตัวอักษร และข้อความในภาษาซี โดยมีการกำหนดค่าอักขระโดยให้อยู่ในเครื่องหมาย single quote ('...') เช่น 'C', 'o', 'm', '1'
อักขระพิเศษบางตัวไม่สามารถกำหนดค่าให้ได้โดยตรง แต่ใช้ค่ารหัส ASCII เช่นอักขระควบคุมการแสดงผลการขึ้นต้นบรรทัดใหม่ใช้ '\n' เป็นต้น โดยมีรูปแบบการใช้งาน 2 รูปแบบ
unsigned char ข้อมูลชนิดอักขระไม่คิดเครื่องหมาย
char ข้อมูลชนิดอักขระปกติ
type var1;
type var1, var2, … , varN;
type คือ ชนิดของข้อมูลที่จะกำหนดให้กับตัวแปร
varX คือ ชื่อของตัวแปรที่จะตั้ง
int number;
int a, b, c;
float real;
float point1, point2;
char choice;
char ch1,ch2;
type var1 = value1;
type var1=value1, varN=valueN;
type คือ ชนิดของข้อมูลที่จะกำหนดให้กับตัวแปร
varX คือ ชื่อของตัวแปรที่จะตั้ง
valueX คือ ค่าของตัวแปรที่ต้องการกำหนดให้
int number = 25;
int a = 1, b = 2, c = 3;
float real = 99.99;
float point1 = 45.2, point2 = 30;
char choice = 'a';
char ch1 = 'o', ch2 = 'z';
• ขึ้นต้นด้วยอักษร A-Z, a-z หรือ เครื่องหมาย_เท่านั้น
• ภายในตัวแปรห้ามมีช่องว่าง
• ภายในตัวแปรประกอบด้วยอักขระ A-Z, a-z, ตัวเลข 0-9 หรือ เครื่องหมาย_เท่านั้น
• การใช้อักษรตัวใหญ่และตัวเล็กมีความแตกต่างกัน
• ห้ามใช้คำสงวนเป็นชื่อตัวแปร
• ควรตั้งชื่อตัวแปรให้สัมพันธ์กับค่าที่ใช้เก็บ
•ในภาษาซีจะไม่มีข้อมูลชนิดข้อความโดยเฉพาะ ซึ่งในการเขียนโปรแกรมส่วนใหญ่จำเป็นต้องมีการรับข้อมูลที่เป็นข้อความ เราสามารถใช้ตัวแปรข้อมูลชนิดอักขระหลายๆ ตัวมาใช้งานได้ในระดับหนึ่ง แต่ยังไม่สะดวกเมื่อข้อความมีความยาวมาก
ตัวอย่าง เช่น ต้องการใช้ข้อความว่า Hello สามารถใช้ตัวแปรชนิดอักขระ 5 ตัวแทน
char ch1='H',ch2='e',ch3='l',
ch4='l',ch5='o';
•ตัวแปรชนิดข้อความในภาษาซี คือ การนำอักษรมาเรียงต่อกัน ดังนั้นสามารถสร้างตัวแปรชนิดอักขระเรียงต่อกันหลาย ๆ ตัวให้เป็นตัวแปรชนิดแถวลำดับ ทำให้สามารถใช้เก็บข้อมูลชนิดข้อความได้
•โดยตัวแปรชนิดข้อความในภาษาซีจะอยู่ในเครื่องหมาย Double quote "
char var1[M1];
char var1[M1], var2[M2];
varX คือ ชื่อตัวแปร
MX คือ จำนวนของอักขระที่จะใช้เก็บบวกด้วย 1
การใช้ตัวแปรแถวลำดับชนิดอักขระเป็นตัวแปรข้อความ ในภาษาซีกำหนดไว้ว่าตัวสุดท้ายของตัวแปรแถวลำดับคือ \0
\0 -> Null character
char var[M] = "??...?";
char var[M] = {'?','?',...,'?'};
char var[] = "??...? ";
var คือ ชื่อตัวแปร
M คือ จำนวนของอักขระที่จะใช้เก็บบวกด้วย 1
? คือ อักษรที่จะกำหนดค่าให้ข้อความ จำนวน m-1 ตัว
char subject[12] = "Programming";
char nick[4] = "Com";
char nick_1[4] = {'C','o','m','\0'};
char name[] = "Ayutthaya";
variable[N]
variable คือชื่อตัวแปร
N คือลำดับอักษรที่จะอ้างอิงในตัวแปรข้อความ
เริ่มนับอักษรตัวแรกเป็นตำแหน่งที่ 0
char subject[12] = "Programming";
การใช้งานตัวแปรร่วมกับคำสั่ง printf
•ในคำสั่ง printf มีส่วนแสดงชนิดข้อมูล ซึ่งตัวแปรที่ใช้งานก็เป็นส่วนย่อยของข้อมูลชนิดต่าง ๆ
printf (format-string, data-list);
•จึงสามารถใช้ตัวแปรแทนในส่วนของ data-list ได้ เช่น
#include<stdio.h>
int main()
{
printf("GPA : %.2f",3.5);
return 0;
}
หรือ
#include<stdio.h>
int main()
{
float g = 3.5;
printf ("GPA : %.2f",g);
return 0;
}