# Wort/text in variable speichern



## LordNemesis (20. September 2003)

ich habe gerade erst mit C++ angefangen und hab sofort ne Frage:

Wie speichere ich ein Wort oder ein ganzen Text in eine Variable?

kleines Beispiel: 
Ich will ein proggi, dass den User nach seinem Namen fragt und bei eingabe den namen wieder ausgibt.


----------



## chibisuke (20. September 2003)

hmm.. also kompletter neuling?..

hmm.. na dann kann es sein das du grade zum erstem mal auf einen pointer triffst...

naja egal.. ich geb dir einfach mal n kleines beispiel, kleine konsolen anwendung..

es gibt im prinzip mehrere varianten, ich zeig dir einfach mal n paar

1.) wenn du im vorhinein weißt wie lang die zeichenkette maximal sein darfq

```
char MyString[100]; //erstellt eine zeichenkette mit platz für 99 zeichen
```
99 deshalb weil das ende mit einem speziellen zeichen ( '\0' ) ageschlossen werden muss, das muss auch noch platz haben..

2.)
 Du weißt die länge erst zur laufzeit...

```
char* MyString; //variable deklarieren
```
und sobalkd du die länge kennst hast du 3 möglichkeiten den platz zu reservieren, ich zeig dir erstmal nur eine... du es mit new machen...

```
MyString = new char[x];
```
wobei x eine variale vom typ int oder long is, die die länge enthält.. vergiss nich das +1 für das ende... außerdem musst du bevor du dein programm beendest den speicherplatz wieder freigeben... das geht mit

```
delete MyString;
```


und nun einfach mal ein kleines beispiel:
wundere dich nicht fals du diese form von main noch nich gesehen hast, aber so lautet die ganz korrekt


```
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char** argv) {
    char* myString;   //variable deklarieren
    myString = new char[1024];  //speicher für die variale reservieren
    ZeroMemory(myString, 1024);  //den string komplett löschen
    printf("%s", "Geben sie ihren namen ein: "); //den user nach seinem namen fragen
    scanf("%s", myString); // die antwort des users lesen
    printf("%s %s\n", "Sie sagten ihr name lautet:", myString); //dem user zeigen das wir ihn verstanden haben
    delete myString; // vorhin reservieren speicher wieder freigeben
    system("pause"); // waren, damit man auch was sieht...
}
```


----------

