के साथ बदलें, मैं कुछ लिखने की कोशिश कर रहा हूं जो अंडरस्कोर के साथ एक स्ट्रिंग में सभी रिक्त स्थान को प्रतिस्थापित करेगा।स्पेस को अंडरस्कोर
मेरे पास अब तक क्या है।
string space2underscore(string text)
{
for(int i = 0; i < text.length(); i++)
{
if(text[i] == ' ')
text[i] = '_';
}
return text;
}
अधिकांश भाग के लिए यह काम करेगा, अगर मैं कुछ ऐसा कर रहा था।
string word = "hello stackoverflow";
word = space2underscore(word);
cout << word;
यह "हैलो_स्टैक ओवरफ्लो" आउटपुट होगा, जो कि मैं चाहता हूं।
लेकिन अगर मैं की तरह
string word;
cin >> word;
word = space2underscore(word);
cout << word;
कुछ करना था मैं सिर्फ पहला शब्द मिलेगा, "हैलो"।
क्या किसी को इसके लिए कोई फिक्स पता है?
पैडेंटिक होने के लिए खेद है, लेकिन आप मिश्रण कर रहे हैं कि आप 'std ::' का उपयोग करते हैं या नहीं। (तकनीकी रूप से, आपका कोड 'std :: cout का उपयोग करके' शीर्ष पर काम करता है; –
@Platinum Azure: आप सही हैं, व्यक्तिगत रूप से मैं एक स्पष्ट 'std ::' का उपयोग करना पसंद करता हूं लेकिन मैंने कुछ ओपी के कोड की प्रतिलिपि बनाई है मेरा उदाहरण मैं इसे साफ़ कर दूंगा। –
धन्यवाद सर! मेरा प्रोग्राम अब ठीक चलाता है :) –