ตัวแปร C, ประเภทข้อมูล, ค่าคงที่

ตัวแปรคืออะไร?

ตัวแปรคือตัวระบุซึ่งใช้ในการเก็บค่าบางอย่าง ค่าคงที่ไม่สามารถเปลี่ยนแปลงได้ในขณะที่ดำเนินการ ตัวแปรสามารถเปลี่ยนแปลงได้ระหว่างการทำงานของโปรแกรมและอัพเดตค่าที่เก็บไว้ภายใน

ตัวแปรตัวเดียวสามารถใช้ได้หลายตำแหน่งในโปรแกรม ชื่อตัวแปรจะต้องมีความหมาย ควรแสดงถึงวัตถุประสงค์ของตัวแปร

Example: Height, age, are the meaningful variables that represent the purpose it is being used for. Height variable can be used to store a height value. Age variable can be used to store the age of a person

จะต้องประกาศตัวแปรก่อนจึงจะใช้ที่ไหนสักแห่งภายในโปรแกรม ชื่อตัวแปรถูกสร้างขึ้นโดยใช้อักขระ ตัวเลข และขีดล่าง

ต่อไปนี้เป็นกฎที่ต้องปฏิบัติตามขณะสร้างตัวแปร:

  1. ชื่อตัวแปรควรประกอบด้วยอักขระ ตัวเลข และขีดล่างเท่านั้น
  2. ชื่อตัวแปรไม่ควรขึ้นต้นด้วยตัวเลข
  3. ชื่อตัวแปรไม่ควรประกอบด้วยช่องว่าง
  4. ชื่อตัวแปรไม่ควรประกอบด้วยคำสำคัญ
  5. 'C' เป็นภาษาที่คำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ ซึ่งหมายความว่าตัวแปรชื่อ 'age' และ 'AGE' นั้นแตกต่างกัน

ต่อไปนี้เป็นตัวอย่างชื่อตัวแปรที่ถูกต้องในโปรแกรม 'C':

height or HEIGHT
_height
_height1
My_name

ต่อไปนี้เป็นตัวอย่างชื่อตัวแปรที่ไม่ถูกต้องในโปรแกรม 'C':

1height
Hei$ght
My name

เช่น เราประกาศตัวแปรจำนวนเต็ม my_variable และกำหนดค่าให้กับมัน 48:

int my_variable;
my_variable = 48;

อย่างไรก็ตาม เราสามารถประกาศและเริ่มต้น (กำหนดค่าเริ่มต้น) ให้กับตัวแปรในคำสั่งเดียวได้:

int my_variable = 48;

ประเภทข้อมูล

'C' มีประเภทข้อมูลต่างๆ เพื่อให้โปรแกรมเมอร์สามารถเลือกประเภทข้อมูลที่เหมาะสมตามความต้องการของแอปพลิเคชันได้ง่าย ต่อไปนี้คือประเภทข้อมูลสามประเภท:

  1. ชนิดข้อมูลดั้งเดิม
  2. ชนิดข้อมูลที่ได้รับ
  3. ประเภทข้อมูลที่ผู้ใช้กำหนด

มีประเภทข้อมูลพื้นฐานหลักห้าประเภท

  1. int สำหรับข้อมูลจำนวนเต็ม
  2. ถ่านสำหรับข้อมูลตัวละคร
  3. float สำหรับตัวเลขจุดลอยตัว
  4. double สำหรับเลขทศนิยมลอยตัวที่มีความแม่นยำสองเท่า
  5. ถือเป็นโมฆะ

อาร์เรย์ ฟังก์ชัน ตัวชี้ โครงสร้าง ล้วนเป็นประเภทข้อมูลที่ถูกอนุมาน ภาษา C มีประเภทข้อมูลหลักที่กล่าวถึงข้างต้นในเวอร์ชันที่ขยายออกไปอีก ประเภทข้อมูลแต่ละประเภทมีขนาดและช่วงที่แตกต่างกัน ตารางต่อไปนี้แสดงขนาดและช่วงของประเภทข้อมูลแต่ละประเภท

ประเภทข้อมูล ขนาดเป็นไบต์ พิสัย
ถ่านหรือถ่านที่ลงนาม 1 -128 ไป 127
ถ่านที่ไม่ได้ลงนาม 1 เพื่อ 0 255
int หรือลงนาม int 2 -32768 ไป 32767
int ที่ไม่ได้ลงนาม 2 เพื่อ 0 65535
int สั้นหรือ int สั้นที่ไม่ได้ลงนาม 2 เพื่อ 0 255
ลงนามสั้น int 2 -128 ไป 127
int ยาวหรือลงนาม int ยาว 4 -2147483648 ไป 2147483647
int ยาวที่ไม่ได้ลงนาม 4 เพื่อ 0 4294967295
ลอย 4 3.4E-38 ถึง 3.4E+38
สอง 8 1.7E-308 ถึง 1.7E+308
ดับเบิ้ลยาว 10 3.4E-4932 ถึง 1.1E+4932

หมายเหตุ: ใน C ไม่มีประเภทข้อมูลบูลีน

ชนิดข้อมูลจำนวนเต็ม

จำนวนเต็มไม่ใช่อะไรนอกจากจำนวนเต็ม ช่วงของประเภทข้อมูลจำนวนเต็มจะแตกต่างกันไปในแต่ละเครื่อง ช่วงมาตรฐานสำหรับชนิดข้อมูลจำนวนเต็มคือ -32768 ถึง 32767

โดยทั่วไปจำนวนเต็มจะมีขนาด 2 ไบต์ ซึ่งหมายความว่าใช้พื้นที่หน่วยความจำทั้งหมด 16 บิต ค่าจำนวนเต็มเดียวใช้หน่วยความจำ 2 ไบต์ ชนิดข้อมูลจำนวนเต็มจะถูกแบ่งออกเป็นประเภทข้อมูลอื่นๆ เช่น short int, int และ long int

ข้อมูลแต่ละประเภทมีความแตกต่างกันในช่วงแม้ว่าจะอยู่ในตระกูลประเภทข้อมูลจำนวนเต็มก็ตาม ขนาดอาจไม่เปลี่ยนแปลงสำหรับประเภทข้อมูลของตระกูลจำนวนเต็มแต่ละประเภท

Int แบบสั้นส่วนใหญ่ใช้สำหรับจัดเก็บตัวเลขขนาดเล็ก Int ใช้สำหรับจัดเก็บค่าจำนวนเต็มขนาดกลาง และ Int แบบยาวใช้สำหรับจัดเก็บค่าจำนวนเต็มขนาดใหญ่

เมื่อใดก็ตามที่เราต้องการใช้ชนิดข้อมูลจำนวนเต็ม เราจะวาง int ก่อนตัวระบุ เช่น

int age;

ในที่นี้ อายุ เป็นตัวแปรของประเภทข้อมูลจำนวนเต็มซึ่งสามารถใช้เพื่อเก็บค่าจำนวนเต็มได้

ชนิดข้อมูลจุดลอยตัว

เช่นเดียวกับจำนวนเต็ม ในโปรแกรม 'C' เราสามารถใช้ประเภทข้อมูลจุดทศนิยมได้ คำสำคัญ 'float' ใช้เพื่อแสดงประเภทข้อมูลจุดลอยตัว สามารถเก็บค่าจุดลอยตัวได้ซึ่งหมายความว่าตัวเลขมีเศษส่วนและทศนิยม ค่าจุดลอยตัวคือจำนวนจริงที่มีจุดทศนิยม ประเภทข้อมูลจำนวนเต็มไม่ได้เก็บส่วนทศนิยมดังนั้นเราจึงสามารถใช้ทศนิยมเพื่อเก็บส่วนทศนิยมของค่าได้

โดยทั่วไป float สามารถเก็บค่าความแม่นยำได้สูงสุด 6 ค่า หาก float ไม่เพียงพอ เราสามารถใช้ประเภทข้อมูลอื่นที่สามารถเก็บค่าจุดลอยตัวขนาดใหญ่ได้ ประเภทข้อมูล double และ long double ใช้ในการเก็บตัวเลขจริงด้วยความแม่นยำสูงสุดถึง 14 และ 80 บิต ตามลำดับ

เมื่อใช้ตัวเลขจุดลอยตัว คำหลัก float/double/long double จะต้องวางไว้ก่อนตัวระบุ ตัวอย่างที่ถูกต้อง ได้แก่

float division;
double BankBalance;

ชนิดข้อมูลตัวอักษร

ชนิดข้อมูลอักขระใช้เพื่อจัดเก็บค่าอักขระตัวเดียวที่อยู่ในเครื่องหมายคำพูดเดี่ยว

ชนิดข้อมูลอักขระใช้พื้นที่หน่วยความจำสูงสุด 1 ไบต์

ตัวอย่าง,

Char letter;

ชนิดข้อมูลเป็นโมฆะ

ประเภทข้อมูลที่เป็นโมฆะไม่มีหรือส่งคืนค่าใดๆ ส่วนใหญ่จะใช้สำหรับกำหนดฟังก์ชันใน 'C'

ตัวอย่าง,

void displayData()

การประกาศประเภทตัวแปร

int main() {
int x, y;
float salary = 13.48;
char letter = 'K';
x = 25;
y = 34;
int z = x+y;
printf("%d \n", z);
printf("%f \n", salary);
printf("%c \n", letter);
return 0;}

Output:

59
13.480000
K

เราสามารถประกาศตัวแปรหลายตัวด้วยประเภทข้อมูลเดียวกันในบรรทัดเดียวโดยคั่นด้วยเครื่องหมายจุลภาค นอกจากนี้ ให้สังเกตการใช้ตัวระบุรูปแบบใน printf ฟังก์ชั่นเอาต์พุต float (%f) และ char (%c) และ int (%d)

ค่าคงที่

ค่าคงที่คือค่าคงที่ที่ไม่เปลี่ยนแปลงระหว่างการทำงานของโปรแกรม ต่อไปนี้คือค่าคงที่ประเภทต่างๆ:

ค่าคงที่จำนวนเต็ม

ค่าคงที่จำนวนเต็มไม่ใช่สิ่งอื่นใดนอกจากค่าที่ประกอบด้วยตัวเลขหรือตัวเลข ค่าเหล่านี้จะไม่เปลี่ยนแปลงระหว่างการทำงานของโปรแกรม ค่าคงที่จำนวนเต็มสามารถเป็นเลขฐานแปด เลขฐานสิบ และเลขฐานสิบหกได้

  1. ค่าคงที่ทศนิยมประกอบด้วยตัวเลขตั้งแต่ 0-9 เช่น
Example, 111, 1234

ข้างต้นเป็นค่าคงที่ทศนิยมที่ถูกต้อง

  1. ค่าคงที่ฐานแปดประกอบด้วยตัวเลขตั้งแต่ 0-7 และค่าคงที่ประเภทนี้จะนำหน้าด้วย 0 เสมอ
Example, 012, 065

ด้านบนคือค่าคงที่ฐานแปดที่ถูกต้อง

  1. ค่าคงที่เลขฐานสิบหกประกอบด้วยตัวเลขตั้งแต่ 0-9 รวมถึงอักขระจาก AF ค่าคงที่เลขฐานสิบหกจะนำหน้าด้วย 0X เสมอ
Example, 0X2, 0Xbcd

ข้างต้นเป็นค่าคงที่ฐานสิบหกที่ถูกต้อง

ค่าคงที่เลขฐานแปดและเลขฐานสิบหกไม่ค่อยถูกใช้ในการเขียนโปรแกรมด้วย 'C'

ค่าคงที่อักขระ

ค่าคงที่อักขระประกอบด้วยอักขระเพียงตัวเดียวที่อยู่ในเครื่องหมายคำพูดเดียว (”) นอกจากนี้เรายังสามารถแสดงค่าคงที่ของอักขระได้โดยระบุค่า ASCII ของมัน

Example, 'A', '9'

ข้างต้นเป็นตัวอย่างค่าคงที่อักขระที่ถูกต้อง

ค่าคงที่สตริง

ค่าคงที่ของสตริงจะมีลำดับอักขระที่อยู่ภายในเครื่องหมายคำพูดคู่ ("")

Example, "Hello", "Programming"

เหล่านี้คือตัวอย่างของค่าคงที่สตริงที่ถูกต้อง

ค่าคงที่จริง

เช่นเดียวกับค่าคงที่จำนวนเต็มที่มีค่าจำนวนเต็มเสมอ นอกจากนี้ 'C' ยังให้ค่าคงที่จริงที่มีจุดทศนิยมหรือค่าเศษส่วนอีกด้วย ค่าคงที่จริงเรียกอีกอย่างว่าค่าคงที่จุดลอยตัว ค่าคงที่จริงประกอบด้วยจุดทศนิยมและค่าเศษส่วน

Example, 202.15, 300.00

สิ่งเหล่านี้คือค่าคงที่จริงที่ถูกต้องใน 'C'

ค่าคงที่จริงสามารถเขียนได้เป็น

Mantissa e Exponent

ตัวอย่างเช่น หากต้องการประกาศค่าที่ไม่เปลี่ยนแปลงเหมือนกับ PI คงที่ของวงกลมแบบคลาสสิก มีสองวิธีในการประกาศค่าคงที่นี้

  1. โดยใช้ const คีย์เวิร์ดในการประกาศตัวแปรซึ่งจะสงวนหน่วยความจำไว้
  2. #include <stdio.h>
    int main() {
    const double PI = 3.14;
    printf("%f", PI);
    //PI++; // This will generate an error as constants cannot be changed
    return 0;}
  3. โดยใช้ #กำหนด คำสั่งพรีโปรเซสเซอร์ซึ่งไม่ใช้หน่วยความจำในการจัดเก็บและไม่มีการใส่อักขระอัฒภาคที่ส่วนท้ายของคำสั่งนั้น
  4. #include <stdio.h>
    #define PI 3.14
    int main() {
    printf("%f", PI);
    return 0;}

สรุป

  • ค่าคงที่คือค่าที่ไม่เปลี่ยนแปลงตลอดการทำงานของโปรแกรม
  • ตัวแปรคือตัวระบุที่ใช้ในการจัดเก็บค่า
  • มีประเภทข้อมูลที่ใช้กันทั่วไปสี่ประเภท เช่น int, float, char และ void
  • ข้อมูลแต่ละประเภทมีขนาดและช่วงแตกต่างกัน