কম্পিউটার

কিভাবে একটি std::string const char* বা char* এ C++ এ রূপান্তর করবেন?


এই বিভাগে, আমরা দেখব কিভাবে C++ স্ট্রিং (std::string) কে const char* বা char* এ রূপান্তর করা যায়। এই ফরম্যাটগুলো হল সি স্টাইলের স্ট্রিং। আমাদের c_str() নামে একটি ফাংশন আছে। এটি আমাদের কাজটি করতে সাহায্য করবে। এটি একটি অ্যারেতে একটি পয়েন্টার ফেরত দেয় যাতে স্ট্রিং অবজেক্টের বর্তমান মানকে প্রতিনিধিত্ব করে অক্ষরগুলির একটি নাল-টার্মিনেটেড সিকোয়েন্স (অর্থাৎ, একটি সি-স্ট্রিং) রয়েছে৷

নিচে std::string::c_str.

এর জন্য ঘোষণা দেওয়া হল
const char* c_str() const;

এই ফাংশনটি এমন একটি অ্যারেতে একটি পয়েন্টার ফেরত দেয় যাতে স্ট্রিং অবজেক্টের বর্তমান মানকে উপস্থাপন করে অক্ষরের একটি নাল-টার্মিনেটেড সিকোয়েন্স (যেমন, একটি সি-স্ট্রিং) থাকে। যদি একটি ব্যতিক্রম নিক্ষেপ করা হয়, স্ট্রিংটিতে কোন পরিবর্তন নেই৷

উদাহরণ কোড

#include <iostream>
#include <cstring>
#include <string>

int main () {
   std::string str ("Please divide this sentence into parts");

   char * cstr = new char [str.length()+1];
   std::strcpy (cstr, str.c_str());

   char * p = std::strtok (cstr," ");
   while (p!=0) {
      std::cout << p << '\n';
      p = std::strtok(NULL," ");
   }
   delete[] cstr;
   return 0;
}

আউটপুট

Please
divide
this
sentence
into
parts

  1. কিভাবে C++ একটি int-এ একটি স্ট্রিং পার্স করবেন?

  2. কিভাবে একটি int কে C++ এ স্ট্রিং এ রূপান্তর করবেন?

  3. কিভাবে C++ এ CSV ফাইল পড়তে ও পার্স করবেন?

  4. কিভাবে একটি তালিকা সি# এ স্ট্রিং এ রূপান্তর করবেন?