نمایش نتایج 1 تا 3 از 3

نام تاپیک: محدود کردن طول ورودی در cin

  1. #1
    کاربر تازه وارد آواتار amir_cpp
    تاریخ عضویت
    آذر 1385
    محل زندگی
    Tabriz
    پست
    88

    Angry محدود کردن طول ورودی در cin

    با سلام خدمت دوستان عزیز.
    همون طور که همتون می دونین اگر قرار باشه یه مقداری رو با cin یا scanf از ورودی بخونیم، کاربر می تونه تا جایی که دلش می خاد از کی بورد حرف وارد بکنه و این بعضی موقع ها ظاهر برنامه رو به هم می ریزه. آیا کسی راهی برای محدود کردن طول ورودی بلده؟
    البته من تو پاسکال یه ابتکاری انجام داده بودم! یعنی با readkey (معادلش getch در ++C) کاراکتر می خوندم و کاراکترها رو در آرایه قرار می دادم و به این ترتیب ورودی محدود می شد. اما مشکل عجیب در ++C اینه که اصلا نمی شه کاراکتری رو تو یک رشته (اشاره گری از کراکتر) قرار داد. اصلا چیزی ذخیره نمی شه و اگر هم ذخیره بشه، چرت و پرته، نه کاراکترهایی که من وارد کردم.
    ممنون می شم اگه بتونین کمک کنید.

  2. #2
    کاربر دائمی
    تاریخ عضویت
    فروردین 1388
    محل زندگی
    ایران سرای من است
    پست
    2,655

    نقل قول: محدود کردن طول ورودی در cin

    سلام
    از کد cin به روش زیر استفاده کن.
    موفق باشید.
     
    char p[20];
    cin.getline(p,50);

  3. #3

    نقل قول: محدود کردن طول ورودی در cin

    هر دو روش محدود کردن ورودی با متدهای cin , scanf رو در مثال زیر مشاهده کنید:

    #include <cstdio>
    #include <string>
    #include <iostream>
    using namespace std;

    int main()
    {

    string str;
    cin.width(5);
    cin >> str;

    char strchar[10];
    scanf("%5s",strchar);


    return 0;
    }



قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •