עבור לתוכן

זקוק לעזרה בנושא cin.ignore() (c++)

Featured Replies

פורסם

ברצוני להקליד 3 מחרוזות ולהציגן על המסך.

להלן התכנית שכתבתי:

#include <iostream>

using std::cout;

using std::cin;

using std::endl;

#include <iomanip>

using std::setw;

void main()

{

   char myFirst[3];

   char mySecond[2];

   char myThird[5];

   cin.ignore();

   cin >> setw(4) >> myFirst;

   cin.ignore();

   cin >> setw(3) >> mySecond;

   cin.ignore();

   cin >> setw(6) >> myThird;

   cout << myFirst;

   cout << endl;

   cout << mySecond;

   cout << endl;

   cout << myThird;

}

כשאני מריץ את התכנית אני מקליד את 3 המחרוזות כך:

123  (enter)

45 (enter)

67890 (enter)

התכנית מציגה על המסך:

23

(שורה ריקה)

67890

מדוע אינני מקבל:

123

45

67890?

תודה !

פורסם

ה-IGNORE הראשון מיותר ובולע לך את האות הראשונה וכל השאר בסדר .

דרך אגב לי זה מדפיס בלי רווחים בין השורות.

פורסם
  • מחבר

השורה השניה לא מופיעה אצלי.

הקלדתי:

123

45

67890

וקיבלתי:

123

67890

:-X

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים