Автоматическое растормаживание колес: Тормозные устройства колес предназначены для уменьшения длины пробега и улучшения маневрирования ВС при...
Архитектура электронного правительства: Единая архитектура – это методологический подход при создании системы управления государства, который строится...
Топ:
Определение места расположения распределительного центра: Фирма реализует продукцию на рынках сбыта и имеет постоянных поставщиков в разных регионах. Увеличение объема продаж...
История развития методов оптимизации: теорема Куна-Таккера, метод Лагранжа, роль выпуклости в оптимизации...
Устройство и оснащение процедурного кабинета: Решающая роль в обеспечении правильного лечения пациентов отводится процедурной медсестре...
Интересное:
Мероприятия для защиты от морозного пучения грунтов: Инженерная защита от морозного (криогенного) пучения грунтов необходима для легких малоэтажных зданий и других сооружений...
Подходы к решению темы фильма: Существует три основных типа исторического фильма, имеющих между собой много общего...
Средства для ингаляционного наркоза: Наркоз наступает в результате вдыхания (ингаляции) средств, которое осуществляют или с помощью маски...
Дисциплины:
|
из
5.00
|
Заказать работу |
Содержание книги
Поиск на нашем сайте
|
|
|
|
Функция atof (рис. 6) преобразует аргумент — строку, которая представляет число с плавающей точкой, — в значение типа double и возвращает значение типа double. Если аргумент функции не может быть преобразован — например, если первый символ строки не является цифрой, — поведение функции atof не определено.
/* Применение atof */
#include <stdio.h>
#include <stdlib.h>
main(){
double d;
d = atof ("99.0");
printf ("%s%.3f\n%s%.3f\n", "The string \"99.0\" converted to double is ", d, "The converted value divided by 2 is ", d / 2.0);
return 0;}
Вывод на экран
The string "99.0" converted to double is 99.000 The converted value divided by 2 is 49.500
Рис. 6. Применение atof
Функция atoi (рис. 7) преобразует аргумент — строку цифр, которая представляет целое число, — в значение типа int и возвращает значение типа int. Если аргумент функции не может быть преобразован, то поведение функции atoi не определено.
/* Применение atoi */
#include <stdio.h>
#include <stdlib.h>
main() {
int i;
i = atoi ("2593");
printf ("%s%d\n%s%d\n", "The string \”", 2593, “\” converted to int is ", i);
printf ("%s%d\”,"The converted value minus 593 is ", i - 593);
return 0;
}
Вывод на экран
The string "2593" converted to int is 2593
The converted value minus 593 is 2000
Рис. 7. Применение atoi
Функция atoi (рис. 8) преобразует аргумент — строку цифр, которая представляет число типа длинное целое, — в значение типа long и возвращает значение типа long. Если аргумент функции не может быть преобразован, то поведение функции atoi не определено. Если для хранения типа int и типа long используются 4 байта, то функции atoi и atoi работают идентично.
/* Применение atoi */
#include <stdio.h>
#include <stdlib.h>
main°() {
long l;
l = atoi("1000000");
printf("%s%ld\n%s%ld\n", "The string /””,' 1000000,”/”converted to long int is ", l);
printf("%s%ld “,”The converted value divided by 2 is ", 1 / 2);
return 0;
}
Вывод на экран
The string "1000000" converted to long int is 1000000
The converted value divided by 2 is 500000
Рис. 8. Применение atoi
Функция strtod (рис. 9) преобразует последовательность символов, представляющих число с плавающей точкой, в значение типа double. Эта функция имеет два аргумента: строку (char *) и указатель строки. Строка содержит последовательность символов, которые должны быть преобразованы в тип double. Указателю присваивается адрес символа, который является первым символом строки-остатка после преобразования части строки. Оператор
d = strtod (string, &stringPtr);
(рис. 9) означает, что d присваивается значение типа double, полученное после преобразования строки string, a stringPtr будет указывать на первый символ (%) после преобразования значения (51.2) из string.
/* Применение strtod */
#include <stdio.h>
#include <stdlib.h>
main () {
double d;
char *string = "51.2% are admitted";
char *stringPtr;
d = strtod(string, &stringPtr);
printf("The string \"%s\" is converted to the \n", string);
printf("double value %.2f and the string \"%s\"\n", d, stringPtr);
return 0; }
Вывод на экран
The string "51.2% are admitted" is converted to the double value 51.20 and the string "% are admitted"
Рис. 9. Применение strtod
Функция strtol (рис. 10) преобразует последовательность символов, представляющих целое число, в значение типа long. Эта функция имеет три аргумента: строку (char *), указатель строки и целое число. Строка содержит последовательность символов, которые должны быть преобразованы. Указателю присваивается адрес символа, который является первым символом строки-остатка после преобразования части строки. Целое число определяет основание, по которому производится преобразование. Оператор
х = strtol (string, &remainderPtr, 0);
из программы рис. 10 означает, что х присваивается значение типа long, полученное после преобразования строки string. Второй аргумент — remainderPtr — после преобразования будет указывать на остаток строки. Если для второго аргумента использовать значение NULL, то строка-остаток будет проигнорирована. Третий аргумент — 0 — показывает, что преобразуемое значение может иметь восьмеричный (основание 8), десятичный (основание 10) или шестнадцатеричный формат (основание 16). Основание может иметь значение 0 или может быть любым значением в диапазоне от 2 до 36. Для численного представления целых значений от 11 до 35 в диапазоне оснований от 11 до 36 используются символы A-Z. Например, шестнадцатеричное число может содержать цифры 0-9 и символы A-F. Целые по основанию 11 могут содержать цифры 0-9 и символ А. Целые по основанию 24 могут содержать цифры 0-9 и символы A-N. Целые по основанию 36 могут содержать цифры 0-9 и символы A-Z.
/* Применение strtol */
#include <stdio.h>
#include.<stdlib.h>
main()
{
long x;
char *string = "-1234567abc", *remainderPtr;
x = strtol (string, sremainderPtr, 0);
printf ("%s\"%s\"\n%s%ld\n%s\"%s\"\n%s%ld\n",
"The original string is ", string,
"The converted value is ", x,
"The remainder of the original string is ",
remainderPtr,
"The converted value plus 567 is ", x + 567);
return 0;
}
Вывод на экран
The original string is "-1234567abc"
The converted value is -1234567
The remainder of the original string is "abc"
The converted value plus 567 is -1234000
Рис. 10. Применение strtol
Функция strtoul преобразует последовательность символов, представляющую целое типа unsigned long, в значение типа unsigned long. Эта функция работает аналогично функции strtol. Оператор
х = strtoul (string, &remainderPtr, 0);
из программы рис. 11 означает, что х присваивается значение unsigned long, полученное после преобразования string. Второй аргумент, &remainderPtr, после преобразования указывает на остаток string. Третий аргумент — 0 — показывает, что преобразуемое значение может иметь восьмеричный, десятичный или шестнадцатеричный формат.
/* Применение strtoul */
#include <stdio.h>
#include <stdlib.h>
main ()
{
unsigned long x;
char *string = "1234567abc", *remainderPtr;
x = strtoul (string, &remainderPtr, 0);
printf ("%s\"%s\"\n%s%lu\n%s\"%s\"\n%s%lu\n",
"The original string is ", string,
"The converted value is ", x,
"The remainder of the original string is ",
remainderPtr,
"The converted value minus 567 is ", x - 567);
return 0;
}
Вывод на экран
The original string is "1234567abc"
The converted value is 1234567
The remainder of the original string is "abc"
The converted value minus 567 is 1234000
Рис. 11. Применение strtoul
|
|
|
Биохимия спиртового брожения: Основу технологии получения пива составляет спиртовое брожение, - при котором сахар превращается...
Типы сооружений для обработки осадков: Септиками называются сооружения, в которых одновременно происходят осветление сточной жидкости...
Эмиссия газов от очистных сооружений канализации: В последние годы внимание мирового сообщества сосредоточено на экологических проблемах...
Наброски и зарисовки растений, плодов, цветов: Освоить конструктивное построение структуры дерева через зарисовки отдельных деревьев, группы деревьев...
© cyberpedia.su 2017-2026 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!