जब मैं सही मान (एक पूर्णांक) में प्रवेश करता हूं तो यह अच्छा होता है। लेकिन जब मैं एक चरित्र में प्रवेश करता हूं, तो मुझे अनंत लूप मिलता है। मैंने इस कोड के हर तरफ देखा है और इसके साथ कोई समस्या नहीं मिली। ये क्यों हो रहा है? मैं विंडोज़ पर जी ++ 4.7 का उपयोग कर रहा हूं।यह कोड मुझे अनंत लूप क्यों देता है?
#include <iostream>
#include <limits>
int main()
{
int n;
while (!(std::cin >> n))
{
std::cout << "Please try again.\n";
std::cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
std::cin.clear();
}
}
इनपुट: x
आउटपुट:
क्या सीआर जैसे एक अनूठा चरित्र है जब आप टाइप करते हैं या एक चरित्र को पकड़ते हैं तो इनपुट के साथ आते हैं? –
बस 'scanf' का उपयोग करें। रास्ता आसान और स्पष्ट है। –
@Joker_vD लेकिन मैंने सोचा कि यह सी ++ था ... –