# string zerlegen und zeichen zählen



## napoletano03 (27. April 2007)

Hallo!!

Gibt es die möglichkeit c++ builder ein wort, datentyp string, in einzelenen Buchstaben zu zerlegen und dessen buchstaben zählen...Möchte jeden einzelenen Buchstaben als einzelne variabel haben.

Wenn es möglch ist ...dann wie?

Danke schon mal

Gruß 
Napoletano


----------



## Sinac (27. April 2007)

Dafür gibt es Arrays.


----------



## bastionmancher (27. April 2007)

Eine Beispielfunktion, die eine Stringeingabe in einem Array speichert:


```
int main
{
cout<<"Bitte geben Sie einen Text ein: "<<flush;
string eingabe;
getline(cin, eingabe);   //Hier wird die Nachricht als String eingelesen
char* eingabe0 = new char[eingabe.size() + 1];     //es wird ein char-array mit der größe des                                                     
                                                                        //Strings angelegt
strcpy(eingabe0, eingabe.c_str());    //der string wird in das char-array kopiert
cout<<eingabe0<<endl;
delete[] nachricht0;
}
```

Die Funktion ist nicht getestet, sollte aber funktionieren!


----------



## kle-ben (28. April 2007)

Du kannst auch den String direkt als Feld ansprechen:

```
string str = "hello world";
for( int i = 0; i < str.size(); i++ ){
char c = str[i];
//blabla ...
}
```


----------



## bogz (1. Mai 2007)

Wie kann man ein \x00 innerhalb eines C++ Strings behandeln?
Offenbar hat sogar length() damit Probleme.
Ich möchte alle Steuerzeichen durch entsprechende Strings
ersetzt anzeigen lassen, also z.B.: 

"ABC\x00DEF"   -> ABC (NUL) DEF
Ich war eigentlich der Meinung, das wäre nur für char [] problematisch ...

string s="HAL\x00LO";
cout <<"" <<s.length();         //liefert 3 (zumindest hier)


----------

