anfängerfrage
-
alsoo
ich will nen string in nen *char packen also so:
cout<<"Bitte Text angeben:"<<endl;
cin>>text;wie kriege ich denn nu den *char text genauso lang wie ich ihr brauche?
-
const char *text1="Text"; char text2[]="Text";
bitte benutz doch vernünftige Topics, denkst du so was wie "anfängerfrage" ist da hilfreich?
wmfrs
-
kingruedi schrieb:
const char *text1="Text"; char text2[]="Text";
bitte benutz doch vernünftige Topics, denkst du so was wie "anfängerfrage" ist da hilfreich?
<a target='_blank'href='http://tinyurl.com/ysokg'>Wie man Fragen richtig stellt</a>äh ich glaub du hast mich flash verstanden...
ich habe nen char:char *text = new char[256];
cin>>text;
cout<<text<<endl;jetzt werden 256 zeichen ausgegeben egal wieviele der user eingibt!
das möchte ich verhindern...ich will nur das ausgeben was auch wirklich eingegeben wurde...
-
Und für das einlesen nimmst du Strings.
Von den kommst du auch an das char* Array ran, wenn du diesen Nullterminierten String noch brauchst.string my; cin >> my; printf("%s",my.c_str());
-
string sKey;
cin>>sKey;----
\main.cpp(18) : error C2679: Binaerer Operator '>>' : Kein Operator definiert, der einen rechtsseitigen Operator vom Typ 'class std::basic_string<char,struct std::char_traits<char>,class std::al
locator<char> >' akzeptiert (oder keine geeignete Konvertierung moeglich)
-
#include <string> oder #include <iostream> vergessen? Vielleicht alte und neue Header gemixt?
So liest du aber nur bis zu einem Space oder Newline std::getline liest eine komplette Zeile
-
ups hatte noch iostream.h...wo findich infos zu getline...hzab vergessen wie das geht ^^
edit: habs thx
-
#include <iostream> #include <string> //... std::string s; std::getline(std::cin, s);