|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Member
Iscritto dal: Oct 2001
Città: Trento
Messaggi: 164
|
c++ getline
int main() {
string s1,s2,s3; cout << " Immetti la prima stringa: "; getline(cin,s1); cout << " Immetti la seconda stringa: "; getline(cin,s2); cout << " Immetti la terza stringa: "; getline(cin,s3); cout << s1+s2+s3 << endl; } perchè con il comando getline nn riesco a memorizzare in s2 la stringa da me immessa nella giusta posizione? es. immetti la prima stringa: XXX immetti la seconda stringa: YYY immetti la terza stringa: ZZZ out: XXXYYYZZZ |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
A me funziona proprio come hai scritto nell'esempio...
|
![]() |
![]() |
![]() |
#3 |
Member
Iscritto dal: Oct 2001
Città: Trento
Messaggi: 164
|
sotto linux anche a me!
il problema è sotto windows utilizzando il microsoft visual studio c++! |
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
L'avevo provato sotto Windows con MinGW32...
Ora l'ho provato con VC++...ed hai ragione !!! A me fa un gioco strano... Dalla seconda coppia di istruzioni in poi mi chiede prima l'input e poi mi presenta l'output...e dopo c'è anche un input fasullo dopo il terzo output... ![]() Mi sa tanto di bug... |
![]() |
![]() |
![]() |
#5 |
Member
Iscritto dal: Oct 2001
Città: Trento
Messaggi: 164
|
già...uffi...io devo fare il mio progetto in win...mi sa ke dovrò smattetare con degli cin.ignore o cose simili
|
![]() |
![]() |
![]() |
#6 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Usa MinGW Developer Studio da www.parinya.ca
|
![]() |
![]() |
![]() |
#7 |
Member
Iscritto dal: Oct 2001
Città: Trento
Messaggi: 164
|
altro baco?!
Perchè se definisco una funzione friend nella classe questa,
nel microsoft visual c++, nn riesce ad accerdermi ai membri privati? |
![]() |
![]() |
![]() |
#8 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Questa mi è sempre funzionata... Posta un po' un codice d'esempio...
|
![]() |
![]() |
![]() |
#9 |
Member
Iscritto dal: Oct 2001
Città: Trento
Messaggi: 164
|
#ifndef SCREEN_H
#define SCREEN_H #include <iostream> #include <string> using namespace std; class Screen { public: Screen(int hi=8,int wid=40,char bkground = '#'); int height() { return _height; } int width() { return _width; } bool isEqual(Screen&,Screen*); void home() { _cursor = 0; } void move(int,int); inline char get() { return _screen[_cursor]; } char get(int,int); bool checkRange(int,int); void copy(const Screen &); void set(const string &s); void set(char ch); private: string _screen; string::size_type _cursor; short _height,_width; inline int remainingSpace(); // friend istream& operator>>(istream&,Screen&); friend ostream& operator<<(ostream&,const Screen&); // perchè nn va? }; #endif // SCREEN_H ..... ostream& operator<<(ostream& os,const Screen& s) { os << " < " << s._height << " , " << s._width << " > "; os << s._screen; return os; } nn riesco ad accedere a _height ecc... in questo modo! forse potrei uscre le funzioni height() ke mi restituiscono tali valori?! Però come friend dovrei avere accesso!! |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 16:29.