![]() |
![]() |
|
|
|||||||
| Programmierung Rat & Tat für Programmierer |
![]() |
|
|
Themen-Optionen | Ansicht |
|
|
#1 |
|
Jr. Member
![]() Registriert seit: 11.02.2003
Beiträge: 46
|
Ich habe ein Problem beim Aufruf von getline(). Ich habe eine Variable string s deklariert. Nun möchte ich in diese Variable mit der Funktion eine Zeile einlesen. Dabei habe ich die Funktion wie folgt verwendet: getline(cin, s);
Leider funktioniert das jedoch nicht. Sehe im Moment nicht woran das liegen könnte. Weiß jemand Rat?? lg dh233 |
|
|
|
|
|
#2 |
|
Inventar
![]() Registriert seit: 19.12.2000
Ort: Baden
Alter: 48
Beiträge: 1.867
|
Der Befehl lautet:
Code:
cin.getline (s, 100); ![]()
____________________________________
Signatur? Nervt ja nur! Avatar? Wunderbar! ![]() |
|
|
|
|
|
#3 |
|
Hero
![]() |
Code:
#include <string>
#include <iostream>
using namespace std ;
void main()
{
string s1;
cout << "Enter a sentence (use <space> as the delimiter):";
getline(cin,s1, ' ');
cout << "You entered: " << s1;
}
template<class _E, class _TYPE, class _A> inline basic_istream<_E, _TYPE>& getline( basic_istream<_E, _TYPE>& Istream, basic_string<_E, _TYPE, _A>& Xstring, const _E _D=_TYPE::newline()); Bei 2 Parametern müsste ein Return als Delimiter standardmäßig verwendet werden.
____________________________________
Bibel |
|
|
|
|
|
#4 |
|
Jr. Member
![]() Registriert seit: 11.02.2003
Beiträge: 46
|
Erstmal Danke.
@ Root: Ich hab das mit getline(cin, string) aus einem Buch und es funktioniert auch bei einem ganz einfachem Beispiel. @ Flink: Hab ich nicht gekannt. Doch das Problem ist, wenn ich getline() verwende und vorher ein cin >> x habe, dann überspringt das Programm die getline()-Anweisung. |
|
|
|
|
|
#5 |
|
Inventar
![]() Registriert seit: 19.12.2000
Ort: Baden
Alter: 48
Beiträge: 1.867
|
Aha, man lernt nie aus
. Danke für die Info!
____________________________________
Signatur? Nervt ja nur! Avatar? Wunderbar! ![]() |
|
|
|
|
|
#6 | |
|
Hero
![]() |
Zitat:
Kann es sein, dass in deinem Fall zwei NeueZeile-Zeichen hintereinander kommen? Ev. kannst du mit istream::ignore() ein paar Zeichen dazwischen überlesen.
____________________________________
Bibel |
|
|
|
|
![]() |
| Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
|
|