Я хотел бы преобразовать целое число в строку, как:функция напротив atoi()?
int a = 12345
кроющие к
char b[6] = "12345"
в основном противоположна функции atoi, которая преобразует строку в целое число.
Я хотел бы преобразовать целое число в строку, как:функция напротив atoi()?
int a = 12345
кроющие к
char b[6] = "12345"
в основном противоположна функции atoi, которая преобразует строку в целое число.
#include <stdio.h>
int sprintf(char *str, const char *format, ...);
Пример
char str[10];
sprintf(str,"%d", 12345);
Спасибо за подпись, но как вы ее используете ? –
char str [10]; sprintf (str, "% d", 12345); – vonzhou
Используйте itoa(). Это должно сделать трюк (только некоторые компиляторы имеют его)
Нестандартно ... –
@ ringøwhat вы имеете в виду? – Heatblast016
[Это то, что я имею в виду] (http://stackoverflow.com/questions/8257714/how-to-convert-an-int-to-string-in-c) –
источник:. Here
обугленного * itoa (INT значение, символ * ул, внутр базы)
Преобразование целого числа в строку (нестандартная функция) Преобразует целочисленное значение в строка с нулевым завершением с использованием указанной базы и сохраняет результат в массиве, заданном параметром str.
Если основание равно 10, а значение отрицательное, в результате строки предшествует со знаком минус (-). С любой другой базой значение всегда считается без знака.
ул должна быть массивом достаточно долго, чтобы содержать любое возможное значение: (SizeOf (INT) * 8 + 1) для поразрядного = 2, то есть 17 байт в 16-битных платформах и 33 в 32-битные платформы.
Но не определен в ANSI-C и не является частью C++
Стандарт-совместимый альтернатива для некоторых случаях может быть Sprintf:
sprintf() with '% d'? – bwoebi
'char b [5]' -> 'char b [6]' или больше – BLUEPIXY
'char * t = s + sizeof (s); * - t = 0; do {* - t = (n% 10) + '0'; п/= 10; } while (n); '(добавить тест для негативов), номер строки -' t'. –