String Length

در C++ برای به‌دست‌آوردن طول یک رشتهٔ متنی (تعداد کاراکترها)، می‌توانید از متدهای داخلی کلاس std::string استفاده کنید.

🟠 C++ String Length

🔹 1. استفاده از ()length.

رایج‌ترین و ساده‌ترین روش:

#include <iostream> #include <string> using namespace std; int main() { string txt = "Hello World"; cout << "Length: " << txt.length(); // خروجی: 11 return 0; }
  • ()length تعداد کاراکترهای موجود در رشته (شامل فاصله‌ها و علائم) را برمی‌گرداند.

🔹 2. استفاده از ()size.

متد ()size کاملاً معادل ()length است و همان مقدار را برمی‌گرداند:

string txt = "C++ Rocks!"; cout << "Size: " << txt.size(); // خروجی: 9

بیشتر در مواقعی استفاده می‌شود که با سایر کانتینرهای STL کار می‌کنید، چون ()size برای همهٔ کانتینرها یکسان است.

🔹 3. رشتهٔ C-Style (char array)

اگر با رشته‌های قدیمی C کار می‌کنید (آرایهٔ char که با \0 خاتمه می‌یابد) از ()strlen در <cstring> استفاده کنید:

#include <iostream> #include <cstring> using namespace std; int main() { char txt[] = "Hello"; cout << strlen(txt); // خروجی: 5 }

توجه: ()strlen طول را بدون درنظرگرفتن کاراکتر پایان \0 می‌دهد.

✅ نکات مهم

  • ()length و ()size برای std::string یکسان هستند؛ انتخاب هرکدام سلیقه‌ای است.

  • فاصله‌ها، علائم نگارشی و حتی کاراکترهای یونیکد چندبایتی در محاسبه لحاظ می‌شوند (ممکن است برای برخی کاراکترهای یونیکد که بیش از یک بایت هستند تعداد «بایت» بیشتر شود ولی طول منطقی همان تعداد کاراکتر است).

  • اگر رشته خالی باشد ("") خروجی صفر است.

خلاصه

روشنوع رشتههدر لازم
()myStr.lengthstd::string<string>
()myStr.sizestd::string<string>
strlen(cstr)char[]<cstring>

استفادهٔ استاندارد و مدرن در برنامه‌های ()C++ stringVar.length یا ()stringVar.size است.