Преобразование типов
Зарегистрируйся в два клика и получи неограниченный доступ к материалам,а также промокод на новый заказ в Автор24. Это бесплатно.
Функции atof, atoi, atol, strrod, strtol, strtoul производят преобразование строки в тип double, int, long int, double, long int, unsigned long int соответственно.
Сначала все эти функции отбрасывают все пробелы, стоящие в начале строки, затем, начиная с первого отличного от пробела символа, функции начинают преобразование. Если встречается литерал, отличный от литералов, соответствующих данному типу, то преобразование прекращается.
Отличие первой тройки (atof, atoi, atol) от всех остальных состоит в том, что они не принимают в качестве аргумента указатель на указатель на тип char, таким образом эти функции возвращают указатель на оставшуюся часть строки.
Их прототипы в заголовочном файле выглядят следующим образом:
double atof(const char * string);
int atoi(const char * string);
long int atol(const char * string);
Пример программы, использующей функцию atof представлен на рисунке 1.
Рисунок 1 – Пример использования функции atof
Функция strtod работает таким же образом, как и предыдущие функции, за исключением того, что при нахождении литерала, отличающегося от возможных, функция записывает адрес данного литерала в указатель на char, с помощью переданного в нее указателя на указатель на char
Зарегистрируйся, чтобы продолжить изучение работы
. Таким образом вызывающей функции становится известно, где данная функция закончила свою работу.
Прототип функции strtod выглядит следующим образом:
double strtod(const char * string, char ** endptr);
Функции strtol и strtoul работают аналогично функции strtod, но при этом имеют дополнительный аргумент, который обозначает базис получаемого числа, то есть, данный аргумент определяет систему счисления числа
50% курсовой работы недоступно для прочтения
Закажи написание курсовой работы по выбранной теме всего за пару кликов. Персональная работа в кратчайшее время!