Прототип функции itoa:
char *itoa( int value, char * string, int radix );
Заголовочный файл
| Название | Язык |
|---|---|
| stdlib.h | С |
| cstdlib | С++ |
Описание
Функция itoa преобразует целое число value в строку string в формате radix. К цифрам числа value подбираются ANSI символы типа char и записываются в строку string.
Функция имеет неудобство, заключающееся в том, что при числе, имеющем количество цифр, большее, чем размер строки, функция выдаст ошибку. Поэтому нужно устанавливать размер с запасом.
Также данная функция поддерживается только Visual Studio и в других IDE не имеет описания.
Параметры:
- value — преобразуемое число
- string — строка, в которую преобразуется число
- radix — основание степени счисления
Возвращаемое значение
Функция itoa всегда возвращает указатель на string. Чтобы отследить неправильное преобразование, используйте функцию _itoa_s, описание которой:
char *_itoa_s( int value, char * string, int size, int radix );
где size — размер строки string. Данная функция возвращает ноль, если преобразование проходит успешно.
Пример: исходный код программы
Код MVS С++
#include "stdafx.h"
#include <iostream>
#include <cstdlib>
int main(int argc, char ** argv)
{
int value;
char string[6] = "";
setlocale(LC_ALL, "Russian");
std::cout << "Введите число: ";
std::cin >> value;
itoa(value, string, 10);
std::cout << "Введённое число при radix = 10: " << string << std::endl;
std::cout << "Элементы строки: " << std::endl;
for( int i = 0; i < 6; i++ )
std::cout << string[i];
std::cout << "." << endl;
itoa(value, string, 16);
std::cout << "Введённое число при radix = 16: " << string << std::endl;
system("pause");
return 0;
}
Пример работы программы
Введите число: 12586
Введённое число при radix = 10: 12586
Элементы строки:
12586 .
Введённое число при radix = 16: 312a
Для продолжения нажмите любую клавишу . . .