Перевод текста в число - C (СИ)
Формулировка задачи:
Мне нужно перевести текст в число. На входе шестандцатиричное чесло в текстовом виде, надо получить инт. Atoi сдесь не помогает, может есть подходящий аналог? Или надо самому это описывать?
Решение задачи: «Перевод текста в число»
textual
Листинг программы
#include <stdio.h> #include <stdlib.h> /* strtol */ int main () { char num1[] = "25cf16"; char num2[] = "0x6abcd"; long int li1, li2; li1 = strtol (num1, NULL, 16); li2 = strtol (num2, NULL, 0); printf("Hexadecimals:\t%s,\t\t%s\n", num1, num2); printf ("Integers:\t%ld,\t%ld\n", li1, li2); getchar(); return 0; }
Объяснение кода листинга программы
- Подключение необходимых библиотек для работы с памятью и строками
- Объявление двух переменных типа char для хранения строк
- Объявление двух переменных типа long int для хранения чисел
- Использование функции strtol для преобразования строки в число, с указанием основания системы счисления (16 для шестнадцатеричной системы)
- Вывод исходных строк на экран
- Вывод преобразованных чисел на экран
- Ожидание нажатия клавиши для завершения работы программы
- Возвращение значения 0, сигнализирующего о успешном завершении работы программы
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д