CString Array deklarieren

Winner

Erfahrenes Mitglied
Hallo zusammen.

Ich sitze da seid gestern dran und finde einfach nicht die passende Lösung, wie ich es machen kann um ein String Array in C++ zu deklarieren. Ich hoffe ihr wisst was ich meine! Ich meine ein Array, was aus Zeichenketten besteht, wie geht das! In Java u VB ist das kein Problem nur hier tu ich mich etwas schwer und stehte auf dem schlauch!

Kann mir auch einer sagen was ich dazu notfalls über include bei holen kann! Ich habe da zwar schon einigesd bei google gefunden, aber dies bringt mich leiter nicht wirklich weiter.

Im moment löse ich das problem so, indem ich verschieden struct Klassen anlege und diese dann als Array deklariere!
struct datenXML pathXML[3500];
struct Koordinaten koord[3500]; //In koord werden die KoordinatenTags gespeichert

Um eure hilfe wäre ich euch sehr dankbar, denn wenn ich dieses hier so weiter mache, dann sprängt das bal den Speicher weil die Dimensionen schon an die grenzen kommen. Ich habe schon einen Stack Overflow wo drunter ich einnen Speicherüberlauf verstehe erzeugt, was nicht so gut ist!

Gruß + Besten Dank
 
Ein string ist eine aneinanderreihung von chars und so wird er auch deklariert.

char VARAIBLENNAME[10];

Achte darauf, daß Du hier nur einen String der Länge 9 Buchstaben abspeichern kannst, da der letzte immer ein '\0' sein muß. Den brauchst Du aber nicht extra einzugeben.
 
Soweit weis ich das auch schon! Ich hätte aber gerne was du da deklariert hast einen Array raus! Also das ich unter einer Variable eine bestimmte Zeichenfolge öfters abspeichern kann!!

char VARAIBLENNAME[10]; das bringt mich nicht weiter. Ich möchte mehrere Strings in einer Variable speichern! Ich hoffe du verstehst was ich meine oder!

Also in Java geht das so:

String Variablenname[10];

da kann ich jetzt so wie ich es in c++ möchte folgendes tun!
String Variablenname[0]="Hallo";
String Variablenname[1]="nun";
String Variablenname[2]="komme";
String Variablenname[3]="ich";
.
.
.
Ich hoffe es ist dir jetzt klar wie ich es meine ich möchte immer eine gewisse Zeichenfolge abscpeichern.
 
Hi,

Dann leg dir doch ein String array an! Damit müsstest du das doch machen können!
Wenn dein Compiler was gegen string hat, dann schreib einfach oben unter deine includes und defines:

using namespace std;

Gruß
Dorschty
 
Hi,

using namespace std;


das habe ich bereits aber es klappt einfach nicht! Kannst du das mal für blöde erklären

also das ist eingebunden
#include <stdio.h>
#include <string>
#include <string.h>
#include <stdlib.h>
#include <iostream>
#include <windows.h>

using namespace std;

ich kann dann weder Cstring oder String, string deklarieren! Frag mich wie das geht! Haast du einen Tipp wie ich es anstellen kann
 
Hi,

erstmal kurz ein Beispiel, das so funktioniert, wie du es dir glaube ich wünscht!

Code:
#include "stdafx.h"
#include <string>
#include "conio.h"

using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
    string d_array[5];
    int i=0;

    d_array[0]="Hallo";
    d_array[1]="jetzt";
    d_array[2]="komm";
    d_array[3]="ich!";
    d_array[4]="Hehe";

    for(i=0;i<5;i++)
    {
        printf("%s ",d_array[i].c_str());
    }
    _getch();

    return 0;
}
Das Programm erzeugt die Konsolenausgabe: "Hallo jetzt komm ich! Hehe"
Ich hoffe das ist so wie du es dir wünscht!
Du brauchst an includes nur die <string> (zumindest für den Teil).

Wenn du dein String array ausgeben willst musst du hinter die Variable bzw. in dem Fall hinter deinen array-Eintrag ein: c.str() setzen!
Hoffe das hilft dir weiter!

Gruß
Dorschty
 
char Variablenname[20][10];

Und jetzt das nochmal erklärt! Also das erste [20] sind die Anzahl der Elemente und das zweite sind die Anzahl der speicherbaren Zeichen im Array was
 
Zurück