1. Dashboard
  2. Forum
    1. Unerledigte Themen
  3. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team-Mitglieder
    4. Trophäen
    5. Mitgliedersuche
  4. Tutorial Bereich
  • Anmelden
  • Registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Seiten
  • Forum
  • Lexikon
  • Erweiterte Suche
  1. Informatik Forum
  2. Webmaster & Internet
  3. Entwicklung

parser für int

  • Zentor
  • 19. Oktober 2002 um 22:08
  • Unerledigt
  • Zentor
    16
    Zentor
    Mitglied
    Reaktionen
    5
    Punkte
    2.710
    Beiträge
    506
    • 19. Oktober 2002 um 22:08
    • #1

    Gibts bei c einen parser für *char -} int oder muss ich den selber coden? Soll auch am Sysprog rechner laufen.

    mfg Zentor

  • MaxAuthority
    17
    MaxAuthority
    Gewinner des Desktop-Contest 2002
    Reaktionen
    5
    Punkte
    3.165
    Beiträge
    626
    • 19. Oktober 2002 um 22:20
    • #2

    ich glaub du meinst atoi();

    und einen einzelnen char kannst du ja einfach umrechnen.

    http://vimperator.org - Make Firefox behave like Vim

  • jjan
    6
    jjan
    Mitglied
    Reaktionen
    8
    Punkte
    293
    Beiträge
    57
    • 19. Oktober 2002 um 23:28
    • #3
    Zitat

    Original geschrieben von MaxAuthority
    ich glaub du meinst atoi();

    und einen einzelnen char kannst du ja einfach umrechnen.

    *PLONK*

    Und schon der erste Fehler. atoi() ist böse, ein programm, in dem atoi() vorkommt, wird in sysprog nicht angenommen.

    http://www.vmars.tuwien.ac.at/courses/sysprog/Richtlinien.html

    Statt dessen ist strtol() zu verwenden (siehe man 3 atoi für eine begründung).

    Eins Zwei Gras Bär Hund Vier Muh Macht Die Kuh

  • Zentor
    16
    Zentor
    Mitglied
    Reaktionen
    5
    Punkte
    2.710
    Beiträge
    506
    • 20. Oktober 2002 um 00:25
    • #4

    Hm, ok, danke, ich glaub strtol is die gesuchte Funktion. txs
    Seltsam, ich hab gedacht es geäbe eine verlässlichere Funktion, die eien beliebig langen *char in einen int umwandelt ohne zusätzliche Argumente. Wie kann man unterscheiden ob eine Konversion von "0" -} 0 erfolgt ist oder ein Fehler aufgetreten ist. Beides liefert doch 0 oder?
    mfg Zentor

  • MaxAuthority
    17
    MaxAuthority
    Gewinner des Desktop-Contest 2002
    Reaktionen
    5
    Punkte
    3.165
    Beiträge
    626
    • 20. Oktober 2002 um 01:44
    • #5
    Zitat

    Original geschrieben von jjan

    *PLONK*

    Und schon der erste Fehler. atoi() ist böse, ein programm, in dem atoi() vorkommt, wird in sysprog nicht angenommen.

    http://www.vmars.tuwien.ac.at/courses/sysprog/Richtlinien.html

    Statt dessen ist strtol() zu verwenden (siehe man 3 atoi für eine begründung).

    tausend dank. das hätte ich ganz übersehen und ich hätte was falsches abgegeben. Tausend dank!

    http://vimperator.org - Make Firefox behave like Vim

  • Iwoas
    1
    Iwoas
    Mitglied
    Punkte
    5
    Beiträge
    1
    • 23. Oktober 2002 um 11:20
    • #6

    Wegen "0" != Fehler:

    char* endp;
    char* str = "0";
    int value = strtol (str, &endp, 10);

    endp zeigt jetzt auf str + 1, ein zeichen umgewandelt. value=0.

    char* endp;
    char* str = "x";
    int value = strtol (str, &endp, 10);

    endp zeigt auf str + 0, value = 0.

  • Maximilian Rupp 27. Dezember 2024 um 12:08

    Hat das Thema aus dem Forum Programmieren nach Entwicklung verschoben.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!

Benutzerkonto erstellen Anmelden

Benutzer online in diesem Thema

  • 1 Besucher

Rechtliches

Impressum

Datenschutzerklärung