ใน C หรือ C++ เราสามารถใช้ตัวแปรคงที่ได้ ค่าตัวแปรคงที่ไม่สามารถเปลี่ยนแปลงได้หลังจากการเริ่มต้น ในส่วนนี้เราจะมาดูวิธีการเปลี่ยนค่าของตัวแปรคงที่บางตัว
หากเราต้องการเปลี่ยนค่าของตัวแปรคงที่ จะทำให้เกิดข้อผิดพลาดในการคอมไพล์เวลา โปรดตรวจสอบรหัสต่อไปนี้เพื่อให้เข้าใจมากขึ้น
ตัวอย่าง
#include <stdio.h> main() { const int x = 10; //define constant int printf("x = %d\n", x); x = 15; //trying to update constant value printf("x = %d\n", x); }
ผลลัพธ์
[Error] assignment of read-only variable 'x'
นี่จึงทำให้เกิดข้อผิดพลาด ตอนนี้เราจะมาดูกันว่าเราจะเปลี่ยนค่าของ x ได้อย่างไร (ซึ่งเป็นตัวแปรคงที่)
ในการเปลี่ยนค่าของ x เราสามารถใช้พอยน์เตอร์ได้ ตัวชี้ตัวหนึ่งจะชี้ตัว x ตอนนี้ใช้ตัวชี้หากเราอัปเดต มันจะไม่สร้างข้อผิดพลาดใดๆ
ตัวอย่าง
#include <stdio.h> main() { const int x = 10; //define constant int int *ptr; printf("x = %d\n", x); ptr = &x; //ptr points the variable x *ptr = 15; //Updating through pointer printf("x = %d\n", x); }
ผลลัพธ์
x = 10 x = 15