Есть функция:
char *str2hex(char *str){ char *temp; int i, size = 4; for(i=0;str[i] != '\0';i++){ snprintf(temp, size, "%04x", str[i]); printf(temp); } }
Она должна переводить переданную строку в hex.
Вывод её работы(строка Hello): 004006006006006
а по задумке должно быть 00480065006c006c006f
Почему обрезается последний символ?
Пробовал формат "%03x", так теперь последний символ не обрезается, но само собой впереди только один ноль.