Ik heb de volgende code om een string naar een char array te kopieren:

sprintf(debugString, "received very very well");
	debugOut(debugString);

debugOut(debugString);

maar nu wil ik een integer waarde kopieren naar een string. Hoe kan ik dit doen?

ik heb het zo geprobeerd maar dit werkt niet:

int x;
x=5;
char string[64];
strchr(string, x);

Zo:


char debugString[128];
int i = 123;
sprintf(debugString, "The value of i is %d", i);
debugOut(debugString);

Maar bedenk wel dat (s)printf veel programmaruimte kost. Op welk platform wil je dit draaien?

Als je compiler dat ondersteund zou ik itoa gebruiken:


char debugString[128];
int i = 123;
itoa (i,debugString,10);
debugOut(debugString);

Mocht dat niet ondersteund worden door je compiler is het een leuk puzzeltje om itoa zelf te schrijven.

Als je toch al met printf aan het pielen bent... Lees daar de manpage even van.

hey bedankt. Het werkt inderdaad!

Op 1 februari 2013 11:01:19 schreef Huub12345:

sprintf(debugString, "received very very well");
	debugOut(debugString);

Deze kan eenvoudiger:

debugOut("received very very well");

Je sprintf wordt nodig als je dingen gaat doen zoals integers tussenvoegen....