1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

char[] -> integer (c++)?

Dieses Thema im Forum "OS X-Developer" wurde erstellt von blutaermer, 13.05.06.

  1. blutaermer

    blutaermer Ingrid Marie

    Dabei seit:
    31.12.03
    Beiträge:
    273
    wenn ich mit fgets stdin auslese, dann landet das alles in einem char array:

    char str[100];
    ...
    fgets(str, 100, stdin);

    ich brauche aber ein integer!
    wie mache ich denn daraus am einfachsten ein integer?
     
  2. kybdf2

    kybdf2 Rheinischer Winterrambour

    Dabei seit:
    10.02.06
    Beiträge:
    923
    Unter Java könnte man das so lösen:

    int[] i = new int[100];
    for(int x =0; x < 100; x++)
    i[x] = Character.valueOf(str[x]);


    Vielleich ist das irgendwie auf c++ übertragbar
     
  3. blutaermer

    blutaermer Ingrid Marie

    Dabei seit:
    31.12.03
    Beiträge:
    273
    das allereinfachste ist

    int bla;
    cin >> bla;

    zu nehmen , aber danke fuer deine hilfe. ;)
     
  4. Walli

    Walli Blutapfel

    Dabei seit:
    06.01.06
    Beiträge:
    2.594
    fgets und co. sind auch nicht unbedingt schick wenn man in c++ programmiert ;) .
     
  5. stoebe

    stoebe Uelzener Rambour

    Dabei seit:
    23.12.05
    Beiträge:
    371
    Jep, in etwa so:

    Code:
    int i[100];
    char j[100];
    ...
    for(int n=0; n<=99; n++) i[n] = j[n];
    
    Normalerweise müsste das so zu lösen sein, wenn ich das Problem richtig interpretiere..
     
  6. Walli

    Walli Blutapfel

    Dabei seit:
    06.01.06
    Beiträge:
    2.594
    Nene, das ist nicht die Lösung. Wenn man es von Hand machen würde sähe es ungefähr so aus (Pseudocode)
    Code:
    int zahl = 0;
    char const* str = "4711";
    for(int len = std::strlen(str), i = len - 1; i != -1; --i)
      zahl = zahl * 10 + str[i] - '0';
    
    Aber wieso selber machen, wenn einem die Streams die Arbeit schon abnehmen?
     
  7. patz

    patz Châtaigne du Léman

    Dabei seit:
    15.11.05
    Beiträge:
    822
    Code:
    char str[100];
    fgets(str, 100, stdin);
    
    int eingabe;
    sscanf(str, "%d", &eingabe);
    Dann haste in "eingabe" deine Eingabe als Integer (schön ist die Lösung aber nicht ;)).
     
  8. blutaermer

    blutaermer Ingrid Marie

    Dabei seit:
    31.12.03
    Beiträge:
    273
    da dachte ich mir schon. das problem bei den 1000 onlinetutorials ist die mangelnde trennung zwischen C und C++. und dann greift man schonmal daneben.

    danke fuer die zahlreiche hilfe ...
     
  9. Walli

    Walli Blutapfel

    Dabei seit:
    06.01.06
    Beiträge:
    2.594
    Gute Informationen zu C++ findet man über www.c-plusplus.de. Bestimmte Tutorials kann ich leider nicht empfehlen, da ich mir C++ aus Büchern beigebracht habe. Als Referenz und Nachschlagewerk wäre wohl "Die C++ Programmiersprache" von Stroustrup zu nennen, was aber zum erlernen und durcharbeiten wohl ein bisschen zu trocken sein dürfte.
     
    #9 Walli, 13.05.06
    Zuletzt bearbeitet: 13.05.06

Diese Seite empfehlen