String Funktion

Gast #765775
Hallo!

Möchte ein String in eine Zahl umwandeln.
Ist das die richtige Syntax dazu, klappt nämlich nicht:

#include <stdlib.h>
volatile unsigned char glob_empfangstringKopie[200];

main (void)
{
unsigned int i=0;
...

i=atoi(glob_empfangstringKopie);


}
Hab ich irgendwas vergessen?
Danke...
Gast
> Ist das die richtige Syntax dazu, klappt nämlich nicht:

Was heißt "klappt nicht"?

> Hab ich irgendwas vergessen?

Keine Ahnung. Die Codefragmente und die Fehlerbeschreibung sind zu 
mager, um das beurteilen zu können.
Persönliche Seite
Ich sehe nur einen Syntaxfehler in der Zeile mit dem ... Das übersetzt 
so nicht.

Und wenn man das verbessert, gibt es ein fragwürdiges Verhalten zur 
Laufzeit, weil in glob_empfangstringKopie so wie es aussieht nichts (OK, 
nicht nichts sondern Nullbytes) drin stehen. Da atoi keine Fehler 
entdeckt ist i nachher wahrscheinlich gleich 0.

atoi ist auch nicht darauf ausgelegt, dass sich der String zur Laufzeit 
ständig ändern kann (volatile). atoi ist so programmiert und in der 
Library drin, dass es annimmt der String ändert sich nicht (const char 
*).

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 18 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.