সি ++ এ স্ট্রিংস সম্পর্কে আপনার যা কিছু জানা দরকার



এই নিবন্ধটি আপনাকে সি ++ এ স্ট্রিংয়ের একটি বিস্তারিত এবং বিস্তৃত জ্ঞান সরবরাহ করবে এবং বিভিন্ন ক্রিয়াকলাপের উদাহরণও সরবরাহ করবে।

শব্দটি মানে অক্ষরের ক্রমযুক্ত ক্রম। অক্ষরের একটি অনুক্রম সি ++ তে শ্রেণীর কোনও অবজেক্ট ব্যবহার করে প্রতিনিধিত্ব করা যেতে পারে। যে ক্লাসটি এটি করার জন্য একটি সংজ্ঞা সরবরাহ করে তাকে স্ট্রিং ক্লাস বলে। স্ট্রিং ক্লাস একক বাইট অক্ষর অ্যাক্সেসের অনুমতি দেওয়ার কার্যকারিতা সহ বাইটগুলির ক্রম হিসাবে অক্ষরগুলি সঞ্চয় করে। সি ++ এর মধ্যে বদ্ধ দানকারীগুলি ডাবল-কোট। এই 'স্ট্রিং ইন সি ++' নিবন্ধে আমি নিম্নলিখিত বিষয়গুলি নিয়ে আলোচনা করব:

স্ট্রিং ক্লাস এবং চরিত্রের অ্যারে পার্থক্য

স্ট্রিং ক্লাস চরিত্রের অ্যারে
স্ট্রিং ক্লাস এমন একটি শ্রেণি যা অবজেক্টগুলিকে সংজ্ঞায়িত করে যা অক্ষরের ধারা হিসাবে উপস্থাপন করা যায়অক্ষর অ্যারে কেবল অক্ষরের অ্যারে of
স্ট্রিংগুলির ক্ষেত্রে, মেমরিটি গতিশীলভাবে বরাদ্দ করা হয় সুতরাং চাহিদা অনুসারে চালানোর সময় আরও মেমরি বরাদ্দ করা যেতে পারেচরিত্রের অ্যারের আকারটি স্থিতিশীলভাবে বরাদ্দ করতে হয় সুতরাং প্রয়োজনে চালানোর সময় আরও মেমরি বরাদ্দ করা যায় না
স্ট্রিং ক্লাসটি বেশ কয়েকটি কার্যকারিতা সংজ্ঞায়িত করে যা স্ট্রিংয়ে বহুবিধ ক্রিয়াকলাপের অনুমতি দেয়।অক্ষর অ্যারে স্ট্রিংগুলি পরিচালনা করতে অনেকগুলি অন্তর্নির্মিত ফাংশন সরবরাহ করে না functions
অক্ষর অ্যারের তুলনায় বাস্তবায়নের তুলনায় স্ট্রিংগুলি ধীর হয়।একটি অক্ষরের অ্যারের বাস্তবায়ন হয় দ্রুত

সি ++ এ স্ট্রিংস ঘোষণা এবং সূচনা করুন

strings-in-c++সি ++ তে স্ট্রিংয়ের সূচনাটি খুব সহজ! আমরা নিম্নলিখিত যে কোনও একটি পদ্ধতি ব্যবহার করতে পারি।





নেমস্পেস স্ট্যান্ড স্ট্রিং std_string ব্যবহার করে

বা

std :: স্ট্রিং std_string
# নেমস্পেস স্টাড ইনট মেইন () {চর চ [12] = {'এইচ', 'ই', 'ল', 'ল', 'ও', '', 'বি', 'ইয়', '' ব্যবহার করে অন্তর্ভুক্ত করুন , 'সি', 'এইচ', '' st স্ট্রিং স্ট = 'হ্যালো বাই স্টাড': স্ট্রিং std_st = 'হ্যালো বাই স্টাডি_স্ট' কোট<< ch << endl cout << st << endl cout << std_st << endl return 0 }

আউটপুট:



হ্যালো বাই চি হ্যালো বাই সেন্ট হ্যালো বাই স্টেডি_স্টে

এই উদাহরণে, আমরা অক্ষর অ্যারে (সিএইচ) এবং স্ট্রিং ক্লিপ উভয়ই দেখিয়েছিগাধা (st এবং std_st) আরম্ভের পদ্ধতি। প্রথমত, আমরা একটি অক্ষর অ্যারে সিএইচ [12] সংজ্ঞায়িত করে অক্ষর অ্যারে পদ্ধতিটি ব্যবহার করেছি যার মধ্যে 12 টি উপাদান রয়েছে এবং নাল অক্ষর দ্বারা সমাপ্ত হয়। দ্বিতীয় অংশে, আমরা একটি স্ট্রিং ক্লাস পদ্ধতি ব্যবহার করেছি।

সি ++ এ স্ট্রিংগুলিতে অপারেশন

স্ট্রিং ক্লাস ব্যবহারের সুবিধা হ'ল সি ++ এ তাদের পরিচালনা করার জন্য বেশ কয়েকটি বিল্ট-ইন ফাংশন রয়েছে। এটি প্রোগ্রামিং সহজ এবং কার্যকর করে তোলে। আসুন আমরা কয়েকটি গুরুত্বপূর্ণ স্ট্রিং ম্যানিপুলেশন ফাংশন গ্রহণ করি এবং কয়েকটি উদাহরণ দেখে সেগুলি বুঝতে পারি।

স্ট্রিং আকার: আকার () এবং দৈর্ঘ্য () উভয় পদ্ধতিই বস্তুর আকার ফিরিয়ে দিতে ব্যবহার করা যেতে পারে।



খরচ<< st.length() <

আউটপুট:

উদাহরণস্বরূপ পিএইচপি মধ্যে নকশা নিদর্শন
11 11

স্ট্রিং সংযোগ: আমরা দুটি বা তারও বেশি স্ট্রিংগুলি কেবল তাদের মধ্যে + অপারেটর ব্যবহার করে সংযুক্ত করতে পারি

স্ট্রিং new_string = st + 'এবং' + std_st cout<< new_string <

আউটপুট:

হ্যালো বাই স্ট্যান্ড এবং হ্যালো স্টাডি_স্টে

স্ট্রিং সংযোজন: .Append (স্ট্রিং) শ্রেণীর সদস্য ফাংশনটি স্ট্রিংয়ের একটি নির্দিষ্ট চরিত্রের স্থানে স্ট্রিংকে যুক্ত করতে এবং সংযুক্ত করতে ব্যবহৃত হতে পারে। যদি কোনও প্রোগ্রামার str.append (str1, p, n) রাখে, তবে এর অর্থ হ'ল স্ট্রিং str1 পজিশন থেকে অক্ষরের সংখ্যা n এর প্রান্তের শেষে যুক্ত হবে।

স্ট্রিং স্ট্রিং = 'আমি স্ট্রিং স্ট্রিং ১' 'পাইথন, সি ++, বা সি' স্ট্রিং অ্যাপেন্ড (স্ট্রাইট ১, ৮, ৩) কোট উপভোগ করছি<< str << endl

আউটপুট:

আমি সি ++ শিখতে উপভোগ করি

স্ট্রিং অনুসন্ধান করা হচ্ছে: অন্যটির মধ্যে স্ট্রিংয়ের প্রথম উপস্থিতি খুঁজে পেতে আমরা () সদস্য ফাংশনটি ব্যবহার করতে পারি। সন্ধান করুন () অবস্থানের পোজ থেকে শুরু করে স্ট্রিংয়ের খড়ের ভিতরে স্ট্রিং সুই খুঁজবে এবং সূচির প্রথম উপস্থিতির অবস্থানটি ফিরে আসবে। Rfind () ফাংশনটি একইভাবে কাজ করে, ব্যতীত এটি পাস করা স্ট্রিংয়ের শেষ উপস্থিতিটি প্রদান করে।

ডাবলকে জাভাতে কীভাবে ডাবল রূপান্তর করতে হয়
স্ট্রিং হাইস্ট্যাক = 'হ্যালো ওয়ার্ল্ড!' স্ট্রিং সুই = 'ও' cout<< haystack.find(needle)<

আউটপুট:

4 4 7 4294967295

প্রথম cout কমান্ডটি কেবল '4' মুদ্রণ করবে যা খড়ের খাঁজে স্ট্রিংয়ের 'o' এর প্রথম উপস্থিতির সূচক। আমরা যদি 'ওয়ার্ল্ড' এর 'ও' চাই, আমাদের প্রথম ঘটনাটি চিহ্নিত করার জন্য 'পোস' সংশোধন করতে হবে। haystack.find (সূঁচ, 4) আবার 4 ফিরে আসবে, যখন haystack.find (সূঁচ, 5) 7. দেবে the. যদি স্ট্রিংটি পাওয়া না যায় তবে () স্টাড :: স্ট্রিং :: এনপোস ফেরত দেয়।

টাইপ আকার_ টাইপ দ্বারা উপস্থাপনযোগ্য সর্বোচ্চ মানের সমান এনপোস একটি বিশেষ মান। এখানে এটি 4294967295 General সাধারণভাবে এটি স্ট্রিং সূচকটি প্রত্যাশিত ফাংশনগুলির দ্বারা স্ট্রিং সূচকটির শেষ হিসাবে বা স্ট্রিং সূচক ফেরত ফাংশনগুলির দ্বারা ত্রুটি সূচক হিসাবে ব্যবহৃত হয়।

এই সাধারণ কোডটি স্ট্র 2 তে 'সি ++' এর সমস্ত উপস্থিতির জন্য একটি স্ট্রিং সন্ধান করে এবং তাদের অবস্থানগুলি মুদ্রণ করে:

স্ট্রিং স্ট্র 2 = 'সি ++ একটি অবজেক্ট-ওরিয়েন্টেড প্রোগ্রামিং ল্যাঙ্গুয়েজ এবং এতে ক্লাস, উত্তরাধিকার, পলিমারফিজম, ডেটা বিমূর্তি এবং এনক্যাপসুলেশন অন্তর্ভুক্ত রয়েছে + ' (স্ট্রিং :: সাইজ_প্রকার আই = 0, টিফাইন্ড (টিফাইন্ড = উইকিস্টারফাইন্ড ('সি ++', আই))! = স্ট্রিং :: এনপোস আই = টিফাইন্ড + 1) {স্টাড :: কোট<< 'Found occurrence of 'C++' at position ' << tfind << std::endl }

আউটপুট:

পজিশনে 'সি ++' এর উপস্থিতি পাওয়া গেছে 0 পজিশনে 'সি ++' এর উপস্থিতি পাওয়া গেছে 132 পজিশনে 'সি ++' এর ঘটনা পাওয়া গেছে 217 পজিশনে
# নেমস্পেস স্ট্যান্ড ক্লাস বেস ব্যবহার করে অন্তর্ভুক্ত করুন {সর্বজনীন: শূন্য ফান_1 () {cout<< 'base class function 1n' } virtual void fun_2() { cout << 'base class function 2n' } virtual void fun_3() { cout << 'base class function 3n' } virtual void fun_4() { cout << 'base class function 4n' } } class derived : public base { public: void fun_1() { cout << 'derived class function 1n' } void fun_2() { cout << 'derived class function 2n' } void fun_4(int x) { cout ফান (() // লেট বাইন্ডিং (আরটিপি) পিটিআর-> ফান_3 () // লেট বাইন্ডিং (আরটিপি) পিটিআর-> ফানআউটি () // প্রারম্ভিক বাঁধাই তবে এই ফাংশন কলটি // অবৈধ (ত্রুটি তৈরি করে) কারণ পয়েন্টার // বেস টাইপ এবং ফাংশনটি হল // উত্পন্ন শ্রেণি // p-> মজা _4 (5)}

আউটপুট:

বেস ক্লাস ফাংশন 1 উত্পন্ন ক্লাস ফাংশন 2 বেস ক্লাস ফাংশন 3 বেস ক্লাস ফাংশন 4

এটির সাথে, আমরা স্ট্রিংস সি ++ এ এই নিবন্ধটি শেষ করব। আমি আশা করি আপনি এটি পরিচালনা করতে পারেন যে বিভিন্ন অপারেশন সম্পর্কে একটি বোঝা পেয়েছি। আপনি যদি আরও শিখতে চান তবে একটি বিশ্বস্ত অনলাইন লার্নিং সংস্থা এডুরেকা দ্বারা জাভা প্রশিক্ষণটি দেখুন। এডুরিকার প্রশিক্ষণ এবং শংসাপত্রের কোর্সটি হাইবারনেট এবং স্প্রিংয়ের মতো বিভিন্ন জাভা ফ্রেমওয়ার্ক সহ আপনাকে মূল এবং উন্নত জাভা উভয় ধারণার জন্য প্রশিক্ষণের জন্য তৈরি করা হয়েছে।

আমাদের জন্য একটি প্রশ্ন আছে? দয়া করে এই ব্লগের মন্তব্য বিভাগে এটি উল্লেখ করুন এবং আমরা যত তাড়াতাড়ি সম্ভব আপনার কাছে ফিরে আসব।