Dej si pozor ať máš inicializované to pole znaků. Tohle vypadá jako by jsi měl jen náhodné věci z paměti.
Tohle mi funguje naprosto korektně.Kód:char * c = new char[255]; int i = 255; sprintf(c,"%i",i); printf("%c %c %c",c[0],c[1],c[2]); delete [] c;