PHOTO
مطالب آموزشی و ترفندها

آموزش کامل گرفتن جمله (رشته String) با فاصله در ++C – همراه با مثال

۳ 10075

همانطور که میدانید در زبان برنامه نویسی ++C در صورتی که یک متغیر از نوع String تعریف کنید قادرید با استفاده از دستور cin فقط یک کلمه را از ورودی دریافت کرده و در آن متغیر قرار دهید (تصویر زیر نشان دهنده ی همین است)

 

 

مشکل این کار این است که: بعد از زدن دکمه SPACE (فاصله) از کیبورد کار گرفتن ورودی خاتمه می یابد و هر آنچه بعد از زدن این دکمه تایپ میکنید در متغیر String قرار داده نخواهد شد. به عبارت دیگر شما با این دستور قادر نیستید که یک جمله را در متغیر String قرار دهید زیرا قطعا در هنگام تایپ جمله لازم است که بین کلمه های یک جمله با زدن دکمه SPACE فاصله بیاندازید که متاسفانه با زدن اولین SPACE کار ورودی خاتمه می یابد و هر آنچه بعد از SPACE تایپ میکنید در متغیر String قرار نخواهد گرفت.
(تصویر زیر همین قضیه را نشان میدهد)

 

 

همانطور که در تصویر فوق مشاهده میکنید ما قصد داشتیم جمله My name is Bagher را در متغیری از نوع String قرار دهیم اما تنها فقط کلمه My در این متغیر قرار داده شده است و این به این دلیل است که بعد از کلمه My از دکمه SPACE برای فاصله انداختن، استفاده کرده ایم.

 

  • در این ترفند قصد داریم این مشکل را برطرف کنیم و اینکه بتوانیم یک جمله کامل با فاصله را در یک متغیر از نوع string قرار دهیم.

    برای حل این مشکل فقط کافیست به جای گرفتن ورودی با دستور cin  از دستوری با الگوی زیر برای گرفتن ورودی استفاده کنیم:

 getline (cin, نام متغیری که از نوع استرینگ تعریف کرده اید);
  • برای نمونه و جهت آشنایی بیشتر شما عزیزان با این کد جدید میخواهیم برنامه ای بنویسیم که یک جمله (با فاصله) را از ورودی دریافت کرده و آن را در متغیری از نوع string به نام str قرار دهد سپس جمله ای که در آن متغیر استرینگی قرار داده است را برای ما نشان دهد:

#include <iostream>

using namespace std;

int main()
{
string str;      //تعریف یک متغیر استرینگی به نام str
cout << “Enter sentence: “;  //چاپ یک جمله برای راهنمایی کاربر
getline (cin, str);                 //گرفتن جمله کامل و قرار دادن آن در متغیر استرینگی
cout << “\n\n You Entered: ” << str << “\n\n”;      //چاپ هر آن چیزی که در متغیر استرینگی قرار داده شده است
return 0;
}

  •  کار تمام است. همانطور که مشاهده میکنید در کد فوق برای گرفتن ورودی از کد getline به جای cin استفاده کرده ایم. getline این ویژگی را دارد که بتوانیم یک جمله ی کامل و با فاصله را در یک متغیری که از نوع string تعریف شده باشد، قرار دهیم.  تصویر زیر نحوه ی اجرای کد فوق را نشان میدهد:

 

 

همانطور که مشاهده میکنید مشکل گرفتن جمله ی با فاصله از ورودی برطرف شده است. در صورت بروز هر گونه سؤال، ابهام یا مشکل لطفا از طریق بخش نظرات مطرح کنید. امیدوارم که این آموزش مورد پسند و استفاده شما کاربر عزیز واقع شده باشد/ پیروز باشید.

 

 

در باره نویسنده / 

Admin

مدیریت وبسایت رسمی و جامع ســــرزمـــیـن کــامـــپــیــوتــر و فعال در زمینه ارائه انواع خدمات میزبانی (Hosting)، ثبت، تمدید و انتقال انواع دامنه ها و راه اندازی انواع وبسایت ها و فروشگاه های اینترنتی https://prochost.com

۳ دیدگاه

  1. ffgg ۱۳۹۸-۰۸-۱۹ در ۱۱:۱۹ -  پاسخ

    یا n \ هم اولش میاد سه

  2. ffgg ۱۳۹۸-۰۸-۱۹ در ۱۱:۱۴ -  پاسخ

    سلام اگه میشه n \n\ اخر دستورات خروجی میان چ کاربردی دارد لطفا بفرستید

    • Admin ۱۴۰۱-۱۱-۱۸ در ۱۷:۳۴ -  پاسخ

      سلام. این دستور باعث شکستن خط (اضافه کردن لاین) می شود. دفعات تکرار این دستور نشان می دهد چند خط شکسته شود (n/).

ارسال پاسخ

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

*

code

پر بازدیدترین ها

  • PHOTO

    کد برنامه ++C رتبه بندی دانشجویان

    سورس کد برنامه ++C که تعداد دانشجویان را به همراه شماره دانشجویی و معدل از ورودی دریافت کرده و سپس دانشجویان برتر رتبه ۱ و ۲ (از نظر نمره ی معدل) را همراه با شماره دانشجویی چاپ میکند.   ♦ دانلود سورس کد قیمت: ۱۰۰۰ تومان پسوند فایل دانلودی: ZIP حجم: ۳۴.۲ کیلوبایت رمز: PC-Land.ir…

  • PHOTO

    نحوه‌ی به‌اشتراک‌گذاری فایل‌ها در Office 2016

    آفیس ۲۰۱۶ تمرکز زیادی به کار گروهی دارد. این موضوع بدین معناست که بیش از پیش نسخه‌ی دسکتاپ آفیس به فضای ابری وابسته شده است.   پیش از آن که بتوانید با دیگر همکاران‌تان در یک محیط زنده بر روی یک فایل کار کنید، لازم است نحوه‌ی ذخیره‌ی فایل و به‌اشتراک‌گذاری آن را فرا بگیرید….

آخرین ویدیو ها

میزبانی شده توسط:

ما را دنبال کنید:

برای اطلاع از آخرین اخبار، آموزش ها، ترفند ها، سورس کد ها، نرم افزار ها و همچنین جهت دریافت مطالب وبسایت به محض انتشار و شرکت در مسابقات برنامه نویسی، ما را در شبکه های اجتماعی دنبال کنید: PC_LAND_IR@

سبد خرید

  • سبد خریدتان خالی است.
logo-samandehi
موبایلتو شارژ کن

error: