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

نام تاپیک: مشکل وارد کردن رکورد در دفترچه تلفن C++‎‎

  1. #1

    مشکل وارد کردن رکورد در دفترچه تلفن C++‎‎

    با سلام خدمت اساتید
    من یه دفترچه تلفن در C++‎ نوشتم. اما یه مشکل داره. اونم اینه ، زمانی که از منوی حذف یا ویرایش رکورد بر میگردم به منوی اصلی و میخوام رکورد جدید وارد کنم. به جای اینکه ابتدا اسم رو بگیره بعد شماره; مستقیما بعد از زدن اینتر از اسم میگذره و میره سراغ شماره تلفن. فایل سورس براتون میفرستم
    فایل های ضمیمه فایل های ضمیمه

  2. #2

    نقل قول: مشکل وارد کردن رکورد در دفترچه تلفن C++‎‎

    من کد شما را ندیدم ولی اون بخش دریافت داده ها را اینجا میگذاشتید بهتر میشد ، چون بیشتر کاربران این سایت سورس شما را دانلود نمیکنند! ( بنا به دلایل مختلف)

    ولی حدس میزنم شما چندین دستور دریافت داده را پشت سرهم گذاشتید! معمولا دستورات ورودی که برای رشته ها استفاده میشوند کد کلید اینتر را نمیخوانند منظورم از بافر صفحه کلیدنمیگیرند و در متغییر ذخیره نمیکنند! پس کد کلید اینتر در بافر صفحه کلید باقی مانده است و اولین دستور ورودی بعدی وقتی بافر صفحه کلید را میخواند اینتر را میخواند و اینتر هم به معنی وارد کردن داده توسط کاربر است!

    بطور خلاصه:
    بعد از دریافت مقدار رشته ای همیشه سعی کنید بافر صفحه کلید را خالی کنید مثلا در C++‎ متد ignore جریان ورودی cin.ignore

    بازهم اگر کد را همینجا میگذاشتید دوستان بهتر راهنمایی میکردند!

  3. #3

    نقل قول: مشکل وارد کردن رکورد در دفترچه تلفن C++‎‎

    نقل قول نوشته شده توسط pbm_soy مشاهده تاپیک
    من کد شما را ندیدم ولی اون بخش دریافت داده ها را اینجا میگذاشتید بهتر میشد ، چون بیشتر کاربران این سایت سورس شما را دانلود نمیکنند! ( بنا به دلایل مختلف)

    ولی حدس میزنم شما چندین دستور دریافت داده را پشت سرهم گذاشتید! معمولا دستورات ورودی که برای رشته ها استفاده میشوند کد کلید اینتر را نمیخوانند منظورم از بافر صفحه کلیدنمیگیرند و در متغییر ذخیره نمیکنند! پس کد کلید اینتر در بافر صفحه کلید باقی مانده است و اولین دستور ورودی بعدی وقتی بافر صفحه کلید را میخواند اینتر را میخواند و اینتر هم به معنی وارد کردن داده توسط کاربر است!

    بطور خلاصه:
    بعد از دریافت مقدار رشته ای همیشه سعی کنید بافر صفحه کلید را خالی کنید مثلا در C++‎‎ متد ignore جریان ورودی cin.ignore

    بازهم اگر کد را همینجا میگذاشتید دوستان بهتر راهنمایی میکردند!





    void EnterData()
    {
    if(maxlist>2000)

    {
    gotoxy(5,20);
    textcolor(LIGHTRED);
    textbackground(0);

    cprintf(" the list is full. please enter any key to continue ");
    getch();}

    else
    {
    gotoxy(5,20);
    textcolor(YELLOW);
    textbackground(0);
    cprintf( "\n enter name: ");

    cin.getline(P,50);
    strcpy(name[maxlist],P) ;

    gotoxy(5,23);
    textcolor(YELLOW);
    textbackground(0);
    cprintf( "\n enter phone number: ");
    cin.getline(K,50);
    strcpy(number[maxlist],K) ;
    maxlist++;
    }

    }

  4. #4

    نقل قول: مشکل وارد کردن رکورد در دفترچه تلفن C++‎‎

    cin.ignore را بعد از گرفتن رشته قرار بدم؟؟ خود رشته از حافظه پاک نمیشه و فقط اینتر حذف میشه؟؟

  5. #5

    نقل قول: مشکل وارد کردن رکورد در دفترچه تلفن C++‎‎‎

    نقل قول نوشته شده توسط pbm_soy مشاهده تاپیک
    من کد شما را ندیدم ولی اون بخش دریافت داده ها را اینجا میگذاشتید بهتر میشد ، چون بیشتر کاربران این سایت سورس شما را دانلود نمیکنند! ( بنا به دلایل مختلف)

    ولی حدس میزنم شما چندین دستور دریافت داده را پشت سرهم گذاشتید! معمولا دستورات ورودی که برای رشته ها استفاده میشوند کد کلید اینتر را نمیخوانند منظورم از بافر صفحه کلیدنمیگیرند و در متغییر ذخیره نمیکنند! پس کد کلید اینتر در بافر صفحه کلید باقی مانده است و اولین دستور ورودی بعدی وقتی بافر صفحه کلید را میخواند اینتر را میخواند و اینتر هم به معنی وارد کردن داده توسط کاربر است!

    بطور خلاصه:
    بعد از دریافت مقدار رشته ای همیشه سعی کنید بافر صفحه کلید را خالی کنید مثلا در C++‎‎‎ متد ignore جریان ورودی cin.ignore

    بازهم اگر کد را همینجا میگذاشتید دوستان بهتر راهنمایی میکردند!


    املای صحیحش چیه؟ cin.ignore; یا cin>>ignore; ???

  6. #6

    نقل قول: مشکل وارد کردن رکورد در دفترچه تلفن C++‎‎


    Cin.ignore(1000,"\n");


  7. #7

    نقل قول: مشکل وارد کردن رکورد در دفترچه تلفن C++‎‎‎

    یا اینکه یک cin اضافی بگذارید
    ویا از توابع سنتی مانند gets میتوانستید استفاده کنید البته یادم نمیاد همچین مشکلیداشت یاخیر؟!
    ویا اصلا با استفاده از تابع getch , getche تابع دریافت کننده رشته برای خودتان بنویسید! خیلی راحت بایک حلقه while میتوانید کاراکترها را دریافت کنید و درصورت مخالف بودن با کد اینتر آنرا در آرایه ذخیره کن واگر اینتر باشد در آرایه کاراکتر '\n' را ذخیره کن و از حلقه خارج شو

  8. #8

    نقل قول: مشکل وارد کردن رکورد در دفترچه تلفن C++‎‎

    سوال : برنامه نویسی به زبان ++C با خروجی به شکل گراف
    سلام
    ببخشید من سوالمو اینجا مطرح میکنم
    من یه برنامه به زبان C++‎‎‎ نوشتم ، می خوام خروجی هام به صورت گراف در بیاد ، آیا تابع یا کدی هست که چنین کاری رو انجام بده ؟ ( خروجی به صورت graph. )
    اگه کسی میدونه لطفا راهنماییم کنه
    ممنون

  9.  

تاپیک های مشابه

  1. مشکل در وارد کردن رکورد به database از طریق Entity frameWork
    نوشته شده توسط ali_heidari_92 در بخش C#‎‎
    پاسخ: 1
    آخرین پست: چهارشنبه 25 تیر 1393, 13:17 عصر
  2. کمک در حل مشکل وارد کردن اطلاعات
    نوشته شده توسط farhadamin در بخش Access
    پاسخ: 8
    آخرین پست: یک شنبه 29 مرداد 1385, 21:15 عصر
  3. مشکل در وارد کردن اطلاعات در دیتابیس!
    نوشته شده توسط M.kavyani در بخش VB.NET
    پاسخ: 8
    آخرین پست: شنبه 12 شهریور 1384, 01:06 صبح
  4. پاسخ: 2
    آخرین پست: یک شنبه 30 مرداد 1384, 08:26 صبح
  5. وارد کردن رکورد در DBISAMQuery
    نوشته شده توسط در بخش برنامه نویسی در Delphi
    پاسخ: 0
    آخرین پست: چهارشنبه 27 آبان 1383, 21:58 عصر

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

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