Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Problem mit einer Zeichenkette

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
18.11.2003, 20:41 Uhr
~modooo
Gast


Ich habe folgendes Problem.
Ich habe ZB.eine Variable angelegt

char wert;


Ich will jetzt unter der Variablen "wert" ZB.30 verschiedene Werte
speichern.
Wie kann ich das machen ohne ZB. 30 mal die Variable "wert" , "wert1" usw. anzulegen?
Ist es egal welche Länge die Zeichenkette hat.

Die Eingabe soll ZB.so aussehen "45673-12"

Und kann man die Variable in der main Funktion
deklarieren,
und in einer anderen Funktion einlesen.
Das muß man dann doch irgendwie mit Pointern machen , oder?

Wäre echt dankbar für Hilfe.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
18.11.2003, 20:51 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


ich vermute mal was du suchst ist ein array;

C++:
char wert[30]; //30 chars von 0...29;
//zuweisung ist dann z.b. so
wert[0]=27;

//wenn du nen string hast kannst du mittels atoi und atof ne zahl draus machen


char hat nur ein byte, das heisst du kannst nur 256 verschiedenen werte darstellen

wenn du grosse zahlen brauchst nimm z.b. short oder int;
--
...fleißig wie zwei Weißbrote

Dieser Post wurde am 18.11.2003 um 21:00 Uhr von Windalf editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
18.11.2003, 21:44 Uhr
~modooo
Gast


Ich muß es aber mit char machen.
Sonst ist es doch keine Zeichenkette mehr,oder?

Das ich das mit arrays machen muß ist schon klar.


Aber ich kriegs nicht hin 30 werte wie ZB "12354-20"
einzulesen.

Muß man das vielleicht so machen "char * wert [30];

Dann schreibt mein Compeiler mir immer:Segmentation fault (core dumped)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
18.11.2003, 22:24 Uhr
Pablo
Supertux
(Operator)


char nimmt NUR EIN ZEICHEN AUF, ein Array von char bzw, ein char* nimmt eine Zeichenkette auf. Was @Windalf gemacht hat ist das, was du brauchst, weil char [] eine Zeichenkette speichert .

Guck mal hier:
www.fun-soft.de/showtopic.php?threadid=1958&time=1069135672
--
A! Elbereth Gilthoniel!
silivren penna míriel
o menel aglar elenath,
Gilthoniel, A! Elbereth!

Dieser Post wurde am 18.11.2003 um 22:25 Uhr von Pablo Yanez Trujillo editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
18.11.2003, 23:03 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


Ich glaub mir dämmert was du willst
meinst du sowas?

C++:
#include <iostream>
#include <vector>

char string[] = "123-213 234423,234243-999";
char seps[]   = "- ,";
char *token;
int main(){

    std::vector<int> numbers;
    token = strtok( string, seps );  
    while( token != NULL ){
        numbers.push_back(atoi(token));
        token = strtok( NULL, seps );
    }
    for(int i=0;i<numbers.size();++i)std::cout<<numbers[i]<<std::endl;

return 0;
}



--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: