itao [gcc/g++]

Von: , Frage gestellt am Mi, 30. Mai 2001

hiho,

ich hab nen kleines problem ... ich sollte den wert eines integers in einen char pflanzen, damit ich es über einen socket verschicken kann ...

leider ist itao nicht Ansi-C/C++ und somit nicht gcc/g++ konform ... tja ... kennt jemand einen workaround wie ich aus

int b = 123345;
char c[4] = "12345";

machen kann ...

gruss

berni

ps.

hab mein c/c++-buch leider ausgeliehen ... somit kann ich nicht selber schauen ... und im netz hab ich auch nichts rechtes gefunden ...

2 Antworten zu dieser Frage

  1. Antwort von nach einer Stunde 0 hilfreich
    Re: itao [gcc/g++]

    leider ist itao nicht Ansi-C/C++ und somit nicht gcc/g++
    konform ... tja ... kennt jemand einen workaround wie ich aus

    int b = 123345;
    char c[4] = "12345";

    machen kann ...
    Du meinst itoa ;)

    Mit sprintf geht es auf jeden Fall:

    int b = 12345;
    char c[6];
    sprintf(c,"%d",b);
    


    Du solltest Deinen Buffer c jedoch ein oder zwei Zeichen laenger deklarieren, als die Ziffern selber lang sein koennen. Ein extra char wird auf jeden Fall immer fuer die abschliessende Null gebraucht (zero-terminated strings), ein weiteres fuer ein evtl. vorhandenes Minus-Vorzeichen.

    --Mathias

    • Antwort von nach 2 Stunden 0 hilfreich
      Re^2: itao [gcc/g++]

      leider ist itao nicht Ansi-C/C++ und somit nicht gcc/g++
      konform ... tja ... kennt jemand einen workaround wie ich aus

      int b = 123345;
      char c[4] = "12345";

      machen kann ...
      Du meinst itoa ;)

      Mit sprintf geht es auf jeden Fall:

      int b = 12345;
      char c[6];
      sprintf(c,"%d",b);
      


      thx !

      genau was ich wollte ... ;-)

      gruss

      berni

Keine passende Antwort gefunden? Jetzt eigene Frage stellen!