نقل قول: عدم اجرای تابع ()getline
سلام
کدتان را بصورت زیر اصلاح کنید.
string partNumber, partDescript;
int quantity, price;
cout << "Enter the product name: ";
cin >> partNumber;
cout << "Enter the description of the product: ";
cin>>ws; // این کد باعث میشود که خط زیر برای دستور زیر تنظیم شده باشد.
cin.getline(partDescript, 32);
cout << "Enter the product quantity: ";
cin >> quantity;
اگر کلاس فوق را من طراحی کرده بودن این کار را انجام نمیدادم.
نقل قول: عدم اجرای تابع ()getline
با تشکر از شما دوست عزیز اما متاسفانه با قرار دادن این کد ( در تابعی که قرار است قرار است به اعضای یک کلاس مقدار اولیه دهد ) پیغام خطا دریافت می کنم.
نقل قول:
اگر کلاس فوق را من طراحی کرده بودن این کار را انجام نمیدادم.
چرا؟؟
نقل قول: عدم اجرای تابع ()getline
کد را به شکل زیر هم می توان تغییر داد که نزدیکتر به کد شماست :
string partNumber, partDescript;
int quantity, price;
cout << "Enter the product name: ";
cin >> partNumber;
cout << "Enter the description of the product: ";
cin >>ws;
getline(cin ,partDescript);
cout << "Enter the product quantity: ";
cin >> quantity;
البته یاد آوری می کنم که تابع ()getline پارامتر سومی هم داره که کاراکتر پایان خط را مشخص میکنه و فکر می کنم به صورت پیش فرض '\n' باشه که با تغییر به ' ' مشکل حل می شود و نیازی به هیچ تغییری نیست :
getline(cin ,partDescript, ' ');
مثال :
string s1, s2;
cout << "Enter a sentence (use <space> or <Enter> as the delimiter): ";
cin >> s1;
cout << "You entered: " << s1 << endl;
cout << "Enter a sentence (use <space> as the delimiter): ";
getline(cin, s2, ' ');
cout << "You entered: " << s2 << endl;
نقل قول: عدم اجرای تابع ()getline
نقل قول:
نوشته شده توسط
emadfa
با تشکر از شما دوست عزیز اما متاسفانه با قرار دادن این کد ( در تابعی که قرار است قرار است به اعضای یک کلاس مقدار اولیه دهد ) پیغام خطا دریافت می کنم.
خطاش کجاست کدها که استاندارد هستند؟
نقل قول: عدم اجرای تابع ()getline
قبل اینکه از getline استفاده کنی این دستور cin.sync() رو وارد کن
cin.sync();
cout << "Enter the description of the product: ";
getline(cin ,partDescript);
نقل قول: عدم اجرای تابع ()getline
نقل قول:
نوشته شده توسط
hoax3r
قبل اینکه از getline استفاده کنی این دستور cin.sync() رو وارد کن
cin.sync();
cout << "Enter the description of the product: ";
getline(cin ,partDescript);
از همه دوستان به خصوص شما دوست عزیز متشکرم. مشکل برطرف شد.