itoa и работа с памятью
имеется:
указатель на стороку - buffer
интеджр - cross
надо:
1. дописать cross в buffer
2. сместить указатель buffer на число байт = кол-ву символов в cross
как я это делаю:
...
char *a;
itoa(cross,a,10);
itoa(cross,buffer,10);
buffer+=sizeof(a);
...
ПРОБЛЕМА:
Cмешение buffer+=sizeof(a); всегда равно 4 байтом (т.е. размеру переменной int)
ПОМОГИТЕ, ПЛЗ!:eek:
Цитата: Аццкий программер
Cмешение buffer+=sizeof(a); всегда равно 4 байтом (т.е. размеру переменной int)
ПОМОГИТЕ, ПЛЗ!:eek:
Не размеру переменной int, а размеру указателя char*.
Пиши
Код:
buffer += strlen(a);
Хотя за использование в itoa() обычного неинициализированного указателя убивать надо...
пасиба!
А как float переконвертировать в char?
Цитата: Аццкий программер
я идиот...гыгы
пасиба!
А как float переконвертировать в char?
пасиба!
А как float переконвертировать в char?
Используй _ecvt(), _fcvt() или _gcvt().
в char - просто присвоить, а в char * - есть универсальная стандартная функция sprintf - конвертирует все что нужно в строку )