পয়েন্টার অ্যাড্রেসের মান কনস্ট্যান্ট অর্থাৎ পয়েন্টার দ্বারা পয়েন্ট করা অ্যাড্রেসের মান পরিবর্তন করা যাবে না।
একটি কনস্ট্যান্ট পয়েন্টার নিম্নরূপ ডিক্লেয়ার করা হয়:
Data_Type const* Pointer_Name;
উদাহরণস্বরূপ, int const *p // কনস্ট্যান্ট ইন্টিজারের পয়েন্টার
উদাহরণ
কনস্ট্যান্টের পয়েন্টার ইলাস্ট্রেট করার C প্রোগ্রাম নিচে দেওয়া হল:
#includeint main(void){ int var1 = 100; // কনস্ট্যান্ট ইন্টিজারের পয়েন্টার const int* ptr = &var1; // পয়েন্ট করা অ্যাড্রেসের মান পরিবর্তন করার চেষ্টা *ptr = 10; printf("%d\n", *ptr); return 0; }
আউটপুট
উপরের প্রোগ্রামটি এক্সিকিউট করলে নিচের ফলাফল পাওয়া যাবে:
Error: trying to change the value of pointer to constant integer
উদাহরণ
const সরিয়ে দিলে কী হয় তা দেখানো হল:
#includeint main(void){ int var1 = 100; // কনস্ট্যান্ট ইন্টিজারের পয়েন্টার সরিয়ে দিয়েছি int* ptr = &var1; // পয়েন্ট করা অ্যাড্রেসের মান পরিবর্তন করার চেষ্টা *ptr = 10; printf("%d\n", *ptr); return 0; }
আউটপুট
উপরের প্রোগ্রামটি এক্সিকিউট করলে নিচের ফলাফল পাওয়া যাবে:
10