String nach ASCII - wie?

Gast #129139
Ein Hilferuf an alle C-Experten,

Eine Stringvariable, mit einem Wertebereich
von 0 bis +/-4.000.000.000 muss in eine ASCII-Variable abgelegt
werden.

Der Compiler ist CodeVisionAVR, MCU ist mega128.

Gibt es da einen einfachen Weg?


Gruß   Norbert mit C_für_Dummies
Gast #129140
>Eine Stringvariable, mit einem Wertebereich
>von 0 bis +/-4.000.000.000
Das klingt eher nach einer Integer-Variable (unsigned, 32 bit)

benutze einfach mal die forensuche, dazu gibt es mind. 1243213 Threads
Gast #129142
Öhm?
Ne... Sicher nicht float!

uint32_t hat einen Wertebereich von 0 bis 4.294.967.296.
Wenn Du den negativen Bereich nutzen willst, dann brauchst Du doppelt
so viele Bits ;)
Gast #129144
Moin!

vielleicht ein kleiner denkansatz:

char* itoa(int eingabe)
{
  char ausgabe[20];
  int a=0,i=0;

  if(eingabe<0)
  {
    ausgabe[0]='-';
    a=1;
    eingabe*=(-1);
  }

  //
  i=10000000;
  while(i>eingabe)
  {
    i/=10;
  }
  while(i>=1)
  {
    ausgabe[a]=(eingabe/i)+48;
    eingabe-=((ausgabe[a]-48)*i);
    a++;
    i/=10;
  }

  ausgabe[a]='\0';

  return ausgabe;

}

bitte keine kritik, der algorithmus ist eigentlich müll, ich weiß

have fun,
karl

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 21 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.