কম্পিউটার টিউটোরিয়াল

C ভাষায় কনস্ট্যান্টের পয়েন্টার (Pointer to Constant) কী?


পয়েন্টার অ্যাড্রেসের মান কনস্ট্যান্ট অর্থাৎ পয়েন্টার দ্বারা পয়েন্ট করা অ্যাড্রেসের মান পরিবর্তন করা যাবে না।

একটি কনস্ট্যান্ট পয়েন্টার নিম্নরূপ ডিক্লেয়ার করা হয়:

Data_Type const* Pointer_Name;

উদাহরণস্বরূপ, int const *p // কনস্ট্যান্ট ইন্টিজারের পয়েন্টার

উদাহরণ

কনস্ট্যান্টের পয়েন্টার ইলাস্ট্রেট করার C প্রোগ্রাম নিচে দেওয়া হল:

#include  int 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 সরিয়ে দিলে কী হয় তা দেখানো হল:

#include  int main(void){    int var1 = 100;    // কনস্ট্যান্ট ইন্টিজারের পয়েন্টার সরিয়ে দিয়েছি    int* ptr = &var1;    // পয়েন্ট করা অ্যাড্রেসের মান পরিবর্তন করার চেষ্টা    *ptr = 10;    printf("%d\n", *ptr);    return 0; }

আউটপুট

উপরের প্রোগ্রামটি এক্সিকিউট করলে নিচের ফলাফল পাওয়া যাবে:

10
  1. ইন্টারফেস এবং সার্ভিস বলতে কী বোঝায়?

  2. সি ভাষায় সিম্পল অ্যাসারশন কী?

  3. সি ভাষায় অড লুপ (Odd Loop) কী?

  4. C প্রোগ্রামিং-এ স্ট্যাটিক মেমরি অ্যালোকেশন কি?