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

সি/সি++-এ আনইনিশিয়ালাইজড প্রিমিটিভ ডেটা টাইপের ভ্যালু

সাবশীচ প্রশ্নों 하나는 সি বা সি++-এ আনইনিশিয়ালাইজড প্রিমিটিভ ডেটা টাইপের ভ্যালু কী হবে? উত্তর ভিন্ন সিস্টেমে ভিন্ন হয়। আমরা ধরে নিতে পারি কম্পাইলার ভেরিয়েবলগুলোর মধ্যে ০ অ্যাসাইন করবে। ইন্টিজারের জন্য ০, ফ্লোটের জন্য ০.০, কিন্তু ক্যারেক্টার টাইপ ডেটার জন্য কী হবে?

উদাহরণ কোড

#include <iostream>
using namespace std;
int main() {
    char a;
    float b;
    int c;
    double d;
    long e;
    cout << a << "\n";
    cout << b << "\n";
    cout << c << "\n";
    cout << d << "\n";
    cout << e << "\n";
}

আউটপুট (Windows কম্পাইলারে)

1.4013e-045
0
2.91499e-322
0

আউটপুট (Linux কম্পাইলারে)

0
0
0
0

তাহলে প্রশ্ন আসে, কেন সি বা সি++ ভেরিয়েবলগুলোর জন্য ডিফল্ট ভ্যালু অ্যাসাইন করে না? উত্তর হলো, স্ট্যাক ভেরিয়েবল আরম্ভিকাইজ করার ওভারহেড কস্টলি। এটি এক্সিকিউশন স্পীড বাধা দেয়। তাই এই ভেরিয়েবলগুলো কিছু ইন্টারমিডিয়েট ভ্যালু ধারণ করতে পারে। এইीलিয়ে প্রিমিটিভ ডেটা টাইপের ভ্যালু ব্যবহার করার আগে অবশ্যই আরম্ভিকাইজ করতে হয়।

  1. AA ট্রি: C/C++-তে ব্যালেন্সড ট্রি ডেটা স্ট্রাকচার

  2. C/C++-তে আর্গুমেন্ট কোয়ার্শন (Argument Coercion)

  3. C++ প্রোগ্রামিং-এ ফান্ডামেন্টাল ডেটা টাইপ (Fundamental Data Types) কী?

  4. C++-এ প্রিমিটিভ ডেটা টাইপ (Primitive Data Types) কী?