কম্পিউটার

C++ এ cin, cout এবং cerr স্ট্রীম কি কি?


cin , cout, cerr, এবং ক্লগ স্ট্রীম যা স্ট্যান্ডার্ড ইনপুট এবং স্ট্যান্ডার্ড আউটপুট পরিচালনা করে। এগুলি iostream হেডার ফাইলে সংজ্ঞায়িত স্ট্রিম অবজেক্ট।

std:: cin ক্লাস istream এর একটি অবজেক্ট যা সংকীর্ণ অক্ষর (চরের প্রকারের) ভিত্তিক স্ট্যান্ডার্ড ইনপুট স্ট্রীমকে প্রতিনিধিত্ব করে। এটি সি স্ট্রিম stdin এর সাথে মিলে যায়। স্ট্যান্ডার্ড ইনপুট স্ট্রীম হল পরিবেশ দ্বারা নির্ধারিত অক্ষরের উৎস। এটাকে সাধারণত বহিরাগত উৎস থেকে ইনপুট বলে ধরে নেওয়া হয়, যেমন কীবোর্ড বা ফাইল।

std:: cout ক্লাস ওস্ট্রিমের একটি অবজেক্ট যা সংকীর্ণ অক্ষর (চরের প্রকারের) ভিত্তিক স্ট্যান্ডার্ড আউটপুট স্ট্রিমকে প্রতিনিধিত্ব করে। এটি সি স্ট্রিম stdout এর সাথে মিলে যায়। স্ট্যান্ডার্ড আউটপুট স্ট্রীম হল পরিবেশ দ্বারা নির্ধারিত অক্ষরের ডিফল্ট গন্তব্য। এই গন্তব্যটি আরও সাধারণ বস্তুর সাথে ভাগ করা যেতে পারে (যেমন সের বা ক্লগ)।

বস্তুটি cerr অবজেক্ট stderr এর সাথে যুক্ত একটি স্ট্রীম বাফারে আউটপুট নিয়ন্ত্রণ করে, -এ ঘোষিত। এটি স্ট্যান্ডার্ড আউটপুট স্ট্রীমে ত্রুটি আউটপুট করার জন্য ব্যবহৃত হয়।

দ্রষ্টব্য - এই হেডারে ঘোষিত সমস্ত অবজেক্ট একটি অদ্ভুত সম্পত্তি শেয়ার করে - আপনি ধরে নিতে পারেন যে সেগুলি আপনার সংজ্ঞায়িত কোনো স্ট্যাটিক অবজেক্টের আগে তৈরি করা হয়েছে, একটি অনুবাদ ইউনিট যাতে রয়েছে । সমানভাবে, আপনি অনুমান করতে পারেন যে আপনার সংজ্ঞায়িত এই ধরনের স্থির বস্তুগুলির জন্য ধ্বংসকারীর আগে এই বস্তুগুলি ধ্বংস হয় না। (যদিও, আউটপুট স্ট্রীমগুলি, প্রোগ্রাম সমাপ্তির সময় ফ্লাশ করা হয়।) অতএব, আপনি প্রোগ্রাম শুরু হওয়ার আগে এবং প্রোগ্রাম শেষ হওয়ার পরে নিরাপদে স্ট্যান্ডার্ড স্ট্রিমগুলি থেকে পড়তে বা লিখতে পারেন৷

আপনি এই স্ট্রিম অবজেক্টগুলিকে নিম্নরূপ ব্যবহার করতে পারেন -

উদাহরণ

#include<iostream>
int main() {
   int my_int;
   std::cin >> my_int;
   std::cout << my_int;
   std::cerr << "An error message";
   return 0;
}

তারপর এই প্রোগ্রামটি hello.cpp ফাইলে সংরক্ষণ করুন। অবশেষে টার্মিনাল/cmd-এ এই ফাইলটির সংরক্ষিত অবস্থানে নেভিগেট করুন এবং −

ব্যবহার করে কম্পাইল করুন
$ g++ hello.cpp

ব্যবহার করে এটি চালান
$ ./a.out

আউটপুট

আপনি যদি এটিকে ইনপুট 15 দেন, তাহলে এটি আউটপুট দেবে −

15 An error message

  1. C++ এ স্ট্যান্ডার্ড ইনপুট স্ট্রীম (cin)

  2. C++ স্ট্যান্ডার্ড আউটপুট স্ট্রীম (cout) কি?

  3. C++ এ স্বাক্ষরিত এবং স্বাক্ষরবিহীন কীওয়ার্ড কী?

  4. C++ এ স্ট্যান্ডার্ড লাইব্রেরি কি?