رشته های ++C – راهنمای جامع

۱۲۶۱۵
۱۴۰۲/۰۷/۱۲
۳ دقیقه
PDF
رشته های ++C – راهنمای جامعرشته های ++C – راهنمای جامع
آموزش متنی جامع
امکان دانلود نسخه PDF

در این مقاله با شیوه کار با رشته های ++C آشنا می‌شویم. بدین ترتیب روش اعلان رشته، مقداردهی اولیه و استفاده از آن‌ها برای عملیات مختلف ورودی / خروجی مورد بررسی قرار می‌گیرند. برای مطالعه بخش قبلی این سری مقالات روی لینک زیر کلیک کنید:

997696

رشته به مجموعه‎ای از کاراکترها گفته می‌شود. دو نوع رشته وجود دارند که به طور رایج در زبان برنامه‌نویسی ++C استفاده می‌شوند.

  • رشته‌هایی که شیء از نوع کلاس String هستند. این کلاس string کتابخانه استاندارد ++C است.
  • C-strings یعنی رشته‌های به سبک C

C-strings

در زبان برنامه‌نویسی C مجموعه کاراکترها به شکل آرایه ذخیره می‌شدند. این وضعیت در زبان برنامه‌نویسی ++C نیز پشتیبانی می‌شود و از این رو C-strings نامیده می‌شوند.

C-strings آرایه‌هایی از نوع char هستند که با کاراکتر null یعنی ‎\0 خاتمه می‌یابند. مقدار ASCII کاراکتر null به صورت 0 است.

C-string چگونه تعریف می‌شود؟

در کد زیر str یک رشته است که 4 کاراکتر در خود نگهداری می‌کند:

با این که عبارت ++C سه کاراکتر دارد، کاراکتر null یعنی 0\ نیز به صورت خودکار به انتهای رشته اضافه می‌شود.

روش‌های جایگزین برای تعریف کردن یک رشته

در ادامه برخی روش‌های جایگزین تعریف رشته را مشاهده می‌کنید:

مانند آرایه‌ها لازم نیست که از همه فضای تخصیص‌ یافته برای رشته استفاده کنیم. به مثال زیر توجه کنید:

مثال 1: استفاده از رشته‌های ++C برای خواندن یک کلمه

در ادامه برنامه‌ای را ملاحظه می‌کنید که برای خواندن یک رشته وارد شده از سوی کاربر استفاده می‌شود:

خروجی

توجه کنید که در مثال دوم تنها عبارت Programming به جای Programming is fun نمایش می‌یابد. دلیل این امر آن است که عملگر استخراج << در C به صورت ()scanf عمل می‌کند و فاصله را به عنوان کاراکتر خاتمه دهنده تصور می‌کند.

مثال 2: رشته‌های ++C برای خواندن یک خط از متن

در ادامه برنامه‌ای را ملاحظه می‌کنید که کل یک خط را که از سوی کاربر وارد شده می‌خواند و نمایش می‌دهد.

خروجی

Enter a string: Programming is fun.
You entered: Programming is fun.

برای خواندن متن شامل فاصله‌های خالی از تابع cin.get استفاده می‌کنیم. این تابع دو آرگومان می‌گیرد. آرگومان اول آن رشته (نشانی عنصر اول رشته) و آرگومان دوم اندازه بیشینه آرایه است. در برنامه فوق str نام رشته و 100 بیشینه اندازه آرایه است.

شیء string

در ++C می‌توان یک شیء رشته نیز برای نگهداری رشته‌ها ایجاد کرد. برخلاف استفاده از آرایه‌های char، اشیای string هیچ طول ثابتی ندارند و می‌توانند بسته به نیاز بسط یابند.

مثال 3: رشته‌های ++C با استفاده از نوع داده string

خروجی

Enter a string: Programming is fun.
You entered: Programming is fun.

در برنامه فوق یک رشته به نام str اعلان می‌شود. سپس رشته‌ای از کاربر درخواست می‌شود.

در ادامه به جای استفاده از تابع <<cin یا ()cin.get می‌توان خط متن وارد شده را با استفاده از ()getline دریافت کرد.

تابع ()getline یک جریان ورودی را به عنوان پارامتر اول می‌گیرد و cin و str مکان خطی هستند که باید ذخیره شود.

ارسال رشته‌ها به یک تابع

روش ارسال رشته‌ها به توابع مشابه روش ارسال آرایه‌ها به یک تابع است.

خروجی

Enter a string: Programming is fun.
Enter another string: Really?
Entered string is: Programming is fun.
Entered char array is: Really?

در برنامه فوق، از کاربر خواسته می‌شود دو رشته وارد کند. این دو رشته به ترتیب در str و str1 ذخیره می‌شوند که str یک آرایه char و str1 یک شیء string است. سپس دو تابع ()display داریم که رشته را به string خروجی می‌دهند.

تنها تفاوت بین دو تابع در پارامترهای آن‌ها است. تابع ()display اولی یک آرایه char به عنوان پارامتر می‌گیرد و دومی یک رشته به عنوان پارامتر دریافت می‌کند. این فرایند به نام overloading تابع نامیده می‌شود. برای مطالعه بخش بعدی روی لینک زیر کلیک کنید:

اگر این مطلب برای شما مفید بوده است، آموزش‌های زیر نیز به شما پیشنهاد می‌شوند:

==

بر اساس رای ۳۷ نفر
آیا این مطلب برای شما مفید بود؟
اگر پرسشی درباره این مطلب دارید، آن را با ما مطرح کنید.
منابع:
programiz
PDF
مطالب مرتبط
۱ دیدگاه برای «رشته های ++C – راهنمای جامع»

عالییی بود ممنون

نظر شما چیست؟

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *