পয়েন্টার সাইজ
পয়েন্টারের আকার নিশ্চিত নয়। এটি নির্ভর করে:
- CPU আর্কিটেকচার: ৩২-বিট সিস্টেমে সাধারণত ৪ বাইট, ৬৪-বিট সিস্টেমে ৮ বাইট।
- অপারেটিং সিস্টেম এবং কম্পাইলার মডেল: LP64, LLP64 ইত্যাদি ডেটা মডেল।
বিশেষতা
- সকল ডেটা টাইপের পয়েন্টার (
int*,float*,char*,void*) একই আকারের হয় (আর্কিটেকচার অনুযায়ী)। sizeof(int*) == sizeof(float*) == sizeof(void*)সাধারণত সত্য।- ফাংশন পয়েন্টার বা মেম্বার পয়েন্টারের আকার ভিন্ন হতে পারে।
উদাহরণ
cout << sizeof(int*) << endl; // 64-bit-এ 8
cout << sizeof(double*) << endl; // 8
cout << sizeof(void*) << endl; // 8
মনে রাখবেন: পোর্টেবল কোডে পয়েন্টার সাইজ ধরে রাখা উচিত নয়।