Г. Шилдт - Полный справочник по C++ (1109478), страница 112
Текст из файла (страница 112)
Функция а1о1 Вупс1иде <свес(11Ь» е)оиЬ1е асог[сппвс сцах *взг)з Функция аеол() преобразует строку з(г в значение типа етопЬ1е. Строка должна содержать корректное представление числа с плавающей точкой. В противном случае возвращаемое значение не определено. Число может завершаться любым символом, недопустимым для представления действительных чисел, т.е.
ратделителем, знаком пунктуации (но не точкой) и символом, огличным от букв в и в. Это значит, что при вызове асов("1оо.овнвтдхз") функция вернет чзисло 1ОО.ОО. Зависимые функции:аеоь() иасо1(). Функция а1о1 Взпс1ие(е <свес(1зЬ» зпс асоз(сопвс спас лзг)з Функция аео1() преобразует строку згг в значение типа 1пе. Строка должна содержать корректное представление целого числа.
В противном случае возвращаемое значение не определено. Число может завершаться любым символом, недопустимым для представления целых чисел, т.е. разделителем, знаком пунктуации и символом. Это значит, что при вызове аео1[ 1дз. зз" ) функция вернет число 123, а дробная часть ".23" будет проигнорирована. Зависимые функции: асох () и асо1(). Глава 3). Служебные функции Функция а1о1 Взпс1це)е ~саге)1зЬ> 1опд аео1(сопев снах *пг)з Функция асо1() преобразует строку гдг в значение типа 1опд. С~рока должна содержать корректное прелставление ллинного целого числа.
В противном случае возвращаемое значение не определено, однако, ьак правило, в этих случаях возвращается О. Число мажет завершаться любым символом, недопустимым для представления целых чисел, т.е. разделителем, знаком пунктуации и символом. Это значит, что при вызове вво1("ззз.зз ) функция вернет число )23, а дробная часть ".23" будет проипзорирована. Зависимые функции:асов() и аеоз.().
функция ЬВеагсй з Взпс1цс)е <свгг)11Ь> чоЫ *Ьвеагсн(сопев чо1а *хеу, сопвс чоус) *Ьид в1ге С шаи, в1хе С иге, тпг (*еаза)юге) (сопвс чоьс) *, сопвс чозг( *) ); В ьпс Ьзззс ззазае(сопвс чозс) *агд), сопев чотд "агл2) з Она должна возвращать значения, описанные в следующей таблице. Ввзирацаемае значение Меньше нуля Нуль Больше нуля агд1 меньше агдд агд1 равно агдд агд1 больше агд2 Массив должен быть упорядочен в порядке возрастания. Если в массиве нет элемента, соответствующего заданному ключу, возвращается нулевой указатель. Зависимая функция:((вогеО . функция йч з В1пс1цг)е <свЫ11Ь> г)1ч с д1ч(зпс питегазаг, тпс г(еагззззтагаг) з 1с)зч с с)1ч(1опд аизаега1аг, 1опд з(еаазазаазаг) Версия функции бзчИ для аргументов типа у па возвращает частное и остаток от деления числителя патегптог на знаменатель 1(епотиагог в виде структуры типа жч е . Версия функции чтет() лля аргументов типа 1опд возвращает частное и осгаток в ви- Часть (В.
Библиотека стандартных функций Функция Ьввагсн() выполняет бинарныи поиск элемента в упорядоченном массиве Ьиг и возвращает указатель на первый элемент, соответствующий ключу Аеу. Количество элементов в массиве задается параметром пию, а размер каждого элемента (в байтах) задается параметром вхие. Для сравнения элементов массива с заданным ключом используется функция, адресуемая указателем сот)заге. Объявление функции соазрагв < ) должно выглядеть сле- 1(уюзцим образом. де структуры типа 1пзт е. Версия функции п1е() для аргументов типа 1опи зквивалентиа функции 1е(1ъ().
СтруКтура тИПа Е(1т С СОдсржнт ПО КрайНЕй МЕРЕ дВа ПОЛЯ. (пс овос; /* частное /' *' 1пс тело /* Остаток */ Структура типа 1((1т е содержит по крайней мере два поля. 1пг Чипе; /* Частное /» ,' *- тпе гет; /* Остаток */ Зависимая Функция: 161>гО . Функция ехй В1пс1пое ссвМ11Ь> чотг) ек1С(1пе ех(г сог/е); Функция ех1е () вызывает немедленное прекраШеииЕ работы программы. Вызываюшему процессу, в роли которого, как правило, выступает операционная система, возврашаегся значение ехй сог/е. По соглашению, если значение ех(Е сог/г равно нулю (константе екхт впссввв), предполагается, что программа завершилась нормально. Ненулевое значение (константа ихтт пиппии) используется для индикации ошибки.
Зависимые функции: асех1е О и аЬокв О. Функция Яе1епч 1 Вьпс1пде совке)11Ь> онат »дееепч(сапвп спас *лагоа)г Функция песепт() возврашает указатель на данные, связанные со строкой по/ле в таблице, содержашей информацию об окружении. Возврашаемая строка не должна изменяться в программе. Окружением программы считаются, например, пути к различным Файлам и подключенныее устройства.
Если функция песеп>г() вызывается с аргументом, который не совпадает ни с одной из характеристик окружения, возвращается нулевой указатель. Функция!ВЬВ 1 В1пс1пое ссвЫ11Ь> 1опи 1аЬв(1пе пглл) / Функция 1аьв () возврашает абсолютное значение числа лиль Зависимая Функция: аЬе() . Функция ЫЬ 1 В1пстпг)е ссвЫ11Ь> 1Жт С 1г)зхг(1опи огопегогог, 1опи г/елико/оаГог) Функция 1Ж»гО для аргументов типа 1ха возвраШает частное и остаток от делеНня ЧИСЛИтЕЛя ЛиГИЕГО/ОГ На ЗНаМЕНатЕЛЬ ИЕПОяйиа/ОГ В ВИДЕ СтруКтурЫ тИПа 1<)1ч С .
СтруКтура тИПа 1а1»г С СОдЕржИт ПО КрайНЕй МЕРЕ дВа ПОЛЯ. Глава 30. Служебные функции 1пс чпос; /* частное /* ** (пс хет; /* Остаток */ Зависимая функция'.~Ш~(). Функция! опдрпр $1пс1ас(е <саеезп1р> иод<> 1опузтр(зюр Ьаб етЩ, 1пе .иагьх>; Функция 1опрэюр(> возобновляет выполнение программы с места последнего вызова функции аее5юрО. Эти дне функции позволяют переключать поток управления с однои функции на другую. Обратите внимание на то, что для использования этой функции необходим заголовок <сеееэщр>.
Функция 1опрэюрО восстанавливает состояние стека, записанное в буфере ел/ои/' при предыдущем вызове функции аееЗюрО. В результате выполнение программы возобновляется с оператора, следующего за вызовом функции еееэюр(). Иначе говоря, кок>пьютеру "кажется", что поток управления никогда нс покидал функцию, вызнавшую функцию еееэюр(). (Образно выражаясь, функция 1опяэюр() предстанляез' собой некую машину времени, которая возвращает управление в предыдущую точку программы, как ни в чем пи бывало.) Буфер елнЬи>'имеет тип эюр Ьпх, определенный в заголовке <свееэюр>. Содержание буфера должно задаваться с помощью вызова функции аееэюр(> еще до вызова функции 1опрэюрО, Значение параметра аагиз становища значенисм, возвращаемым функцией аееэюр().
Оно используется лля определения отправной точки, из которой выполняется нелокальный переход Допускаются нсе значения, кроме нуля. Чаше всего функция 1опяэюрО используется для возврата из глубоко вложенного набора функций при возникновении ошибки. Зависимая функция:аееэюрО . Функция п)Ыеп Н1пс1ц<>е <свео11Ь> >пс вЫев(сопят сцаг *юг, в>ае с гке)/ Функция юЬ1еп() возвращает длину многобайтового символа (в байтах), на который ссылается указатель /дг. Функция проверяет лишь з!те первых символов.
В случае ошибки возвращается число -1. Если указатель згг является нулевым, а многобайтовые символы закодированы в соответствии с текущей локализацией, функция юЬ1еп() НОЗВРащает ненулевое значение. В противном случае возвращается число О. Зависимые функции:юЬеонс() и юсееюЬ(). Функция п)Ь|1оисв $1пс1ц<>е <санс>11Ь> н(не С юЬвеонсн(нснаг С *оиц савве сцаг *и, нане С з/ге> Функция юЬаеоюсвО преобразует мцогобайтовую строку гн в расширенную символьную строку и записывает результат в массив оиг.
При этом в массив ош записываются лишь згте первых байтов. Часть 111. Библиотека стандартных функций Функция тьв»онсвО возврашает количество преобразованных многобантоеых символов. Если возникает ошибка, функция возвращает число -1. Зависимые функции:мсвеовьв() итьеозгс(). функция вЫоя(с Е(пс1сде <ся»й11Ь> 1п» пь»онс(нсьат » *аи!, сопя» сьат *ин я1ае » .Ме)! Функция ть»оие() преобразует многобайтовый символ, записанный в массиве гп, в расширенный символ и записывает результат в массив аав При этом учитываю~»я лишь з)ге первых байтов.
Функция вьеозгеО возврашает количество преобразованных многобайтовых символов. Если возникает ошибка, функция возвращает число -!. Зависимые функции: выев() и мсеоиь() . Функция оаог1 $1пс1сбе <ся»611Ь> чоМ. цяот»(чс1й *Ьиу, ахая » аит, я(ае » х(те, 1п» (*<овраге) (сопя» чоЫ , сопя» чо1д *)); й зп» Гшк аате(сопя» чо1<) *а>я), сопя» чо1г) *агя2) ! Она должна возвращать значения, описанные в следующей таблице.
Меньше нуля Нуль Больше нуля агд! меньше агд2 агд! равно агд2 агд! бопьше агд2 Массив сортируется в порядке возрастания. Зависимая функция: ьяевксь(). Функция гаве Взпс1обе <сявдпа1> 1п» тазяе(1п» е(яаа!) ! Функция кв1яеО посылает выполняемой программе сигнал, определенный параметром з)дла1 Если функция выполнена успешно, возвращается нуль, в противном случае возврашается ненулевое значение. Для применения функции ка1яе() необходим заголовок <ся1впв1>. Стандарт языка С++ определяет следующие сигналы. Разумеется, каждый компилятор может добавлять свой набор дополнительных сигналов.
Глава 30. Служебные функции Функция цяоке() упорядочивает массив Ьигс помошью алгоритма быстрой сортировки (разработашюго Хоаром (Ноаге)). Алгоритм быстрой сортировки является наилучшим универсальным алгоритмом сортировки После выполнения функции массив оказывается упорядоченным. Количество элементов массива задается параметром лит, а размер каждого элемента (в байтах) задается параметром з(те. Для сравнения элементов массива используется функция сатраге.
Объявление функции соврвее О должно выглядеть следуюшим образом. Значение Аварийное завершение программы. Ошибка прн выполнении операции над чнспамн с плавающей точкой Неверная команда. Пользователь нажал комбинацию кпаанш <стах+с>. Неверный доступ к памяти. Прекратить еыгюпненне программы. в талаат ахатвв вхахьь яхахнт яхаввач яхутеви Зависимая функция: взятках().
Функция гапб Еьпс1цс)е <сепг)11Ь> 1пс хапб(чо1с()г Функция хапд() генерирует последовательность псевдослучайных чисел Каждый раз при вызове функции хапгз() возвращается целое число из диапазона от нуля до влип идх. Зависимая функция: втап<(() . Функция ае1~п)р $1пс1цде <саехуюр> 1пе еес)юр(Зпр Ьцг еп>ЬиГ) г Функция нее~ар() сохраняет в буфере епгбиг состояние стека в момент последнего вызова функции хоззазюр(). Для использования этой функции необходим заголовок <сееезтр>. При вызове функция аеезмр() возвращает число О. Однако функция ).опазззр() передает функции ееезззр() аргумент, который становища ее значением (всегда ненулевым) после вызова функции 1ооазмр() . Дополнительная информация содержится в разделе, посвященном функции 1огза3 юр ( ) . Зависимая функция: 1опазмр() .