String Data Types

🔹 معرفی

  • رشته یا String مجموعه‌ای از کاراکترهاست (مثل یک کلمه یا جمله).

  • در C++ دو روش اصلی برای کار با رشته داریم:

    1. C-style strings → آرایه‌ای از کاراکترها (مثل زبان C).

    2. C++ string class → کلاس آماده string در کتابخانه استاندارد (مدرن و راحت).

در بیشتر پروژه‌های امروزی از std::string استفاده میشه.

🔹 1️⃣ استفاده از std::string (روش مدرن)

قبل از استفاده باید هدر <string> رو اضافه کنیم.

تعریف و مقداردهی

#include <iostream> #include <string> using namespace std; int main() { string name = "Ali"; cout << "Name: " << name; return 0; }

📌 خروجی:

Name: Ali

ترکیب و الحاق رشته‌ها

#include <iostream> #include <string> using namespace std; int main() { string first = "Hello"; string last = "World"; string message = first + " " + last; cout << message; return 0; }

📌 خروجی:

Hello World

طول رشته

string text = "Programming"; cout << text.length(); // یا text.size()

📌 خروجی:

11

دریافت ورودی شامل فاصله

string fullname; getline(cin, fullname); // می‌تواند فاصله‌ها را هم بگیرد

دسترسی به کاراکترها

string word = "Hello"; cout << word[0]; // H word[0] = 'J'; cout << word; // Jello

🔹 2️⃣ C-style strings (روش قدیمی)

  • رشته به صورت آرایه‌ای از char تعریف میشه و باید با \0 پایان یابد.

#include <iostream> using namespace std; int main() { char name[] = "Ali"; cout << name; return 0; }

برای این روش از توابع <cstring> مثل strlen, strcat استفاده میشه.

🔹 چند متد پرکاربرد در std::string

متدتوضیح
length()طول رشته
append("txt")اضافه کردن متن به انتهای رشته
substr(pos,n)برش رشته از موقعیت مشخص
find("txt")پیدا کردن موقعیت یک زیررشته
replace(p,n,"x")جایگزینی بخشی از رشته

✅ خلاصه

  • ترجیحاً از std::string استفاده کن: راحت، امن و پر از امکانات.

  • برای سازگاری با کدهای قدیمی میشه از C-style strings استفاده کرد.

  • متدهایی مثل length(), substr(), append() کار با رشته‌ها رو ساده می‌کنن.