02. februar 2007 - 15:20
Der er
3 kommentarer og 1 løsning
Strings og spaces
Hej... Jeg sidder og roder med lidt C++, jeg har skrevet flg.: #include <isostream> #include <string> int main() { std::string name; std::cin >> name; std::cout << "Hej " << name << std::endl; return 0; } Den virker også fint. Problemet ligger i at når jeg f.eks. skriver "a og b", går den over i et uendeligt loop. ...Jeg tror det noget at gøre med mellemrummene, det virker nemlig uden. Hvad kan jeg gøre ved det? På forhånd tak...
Annonceindlæg tema
Offentlig digitalisering
Fra effektivisering til digital suverænitet. Hvordan skaber det offentlige en digital fremtid med AI, sikkerhed og kontrol i centrum?
02. februar 2007 - 15:32
#1
jeg kan ikke tro at den viste kode gaar i uendeligt loop men muligvis skal du bruge getline fremfor >> til at laese med
02. februar 2007 - 20:36
#2
>> operatoren stopper når den kommer til en space karakter. Brug getline: #include <iostream> #include <sstream> int main() { std::string S; while(std::getline(std::cin, S)) std::cout << "Hello: " << S << std::endl; }
02. februar 2007 - 21:59
#3
hmm.. getline hopper den let og elegant over og sætter strengen til "". Kan det have noget at gøre med at jeg kører Visual C++ 2005?
02. februar 2007 - 22:38
#4
fandt det selv... skulle bare kalde std::cin.ignore(); før getline... tak for deltagelsen.
Kurser inden for grundlæggende programmering