c++ - Using `getline(cin, s);` after using `cin >> n;` -
<पूर्व>
int n; Std :: cin & gt; & gt; n; Std :: string s = ""; Std :: getline (cin, s);
मैंने देखा है कि अगर मैं cin
का उपयोग करता हूं, तो मेरा प्रोग्राम अगली बार लटका होगा जब मैं लाइन मिलती है (पिन, श्रेणी इनपुट)
।
चूंकि getline ()
का उपयोग कर रहा है cin
, यही वजह है कि अगर यह प्रोग्राम पहले से इस्तेमाल किया हुआ है, तो उसे क्यों लटकाया जा रहा है cin < / code>? अगर मुझे
cin
?
आपको इनपुट स्ट्रीम साफ़ करने की आवश्यकता है - अपनी कॉइन के बाद निम्नलिखित को जोड़ने का प्रयास करें:
cin.clear (); Cin.ignore (std :: numeric_limits & lt; std :: streamsize & gt; :: max (), '\ n');
प्रश्न का स्वीकृत जवाब यह बताता है कि क्यों / जब यह आवश्यक है।
Comments
Post a Comment