Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
тюмгу / Лекции КБ ИБАС 1 курс 2 семестр / лекция1 Безопасность 2018.ppt
Скачиваний:
19
Добавлен:
08.12.2019
Размер:
1.35 Mб
Скачать

Функции преобразования типа Функция _atoi64

Синтаксис функций _atoi64 имеет вид:

__int64 _atoi64 ( const char* ptr ) ;

Эта функция преобразуют строку символов, на которую указывает ptr, в число типа __int64. Если преобразуемое число превышает диапазон значений типа __int64, функция возвратит непредсказуемое значение.

33

Функции преобразования типа Функции atof

Функция atof, определенная как

double atof(const char* ptr)

выполняет преобразование строки в число с плавающей точкой типа double. Строка символов должна быть

представлена с учетом формата:

[пробелы][знак][цифры][.][цифры][е|Е[знак]цифры].

Преобразование символов прекращается, как только найден первый неконвертируемый символ или достигнут конец строки.

Функции преобразования типа Функции strtod

Функция strtod преобразует строку символов в число с

плавающей точкой. Ее синтаксис имеет следующий вид: double strtod ( const char *s , char **endptr) ;

Функция преобразует строку, на которую указывает s, в число типа double. В случае прекращения

конвертирования строки возвращает указатель endptr на первый непреобразуемый символ.

Функции преобразования типа Функции _itoa и _ltoa

Функции обратного преобразования _itoa и _ltoa производят конвертирование чисел типа int и long соответственно в строку символов. Они имеют следующий

синтаксис:

char *_ltoa ( long value , char *string , int radix ) ; char *_itoa ( int value , char *string , int radix ) ;

Данные функции принимают в качестве аргумента число value и преобразуют его в строку string с учетом основания системы счисления, представленной в переменной radix.

36

Функции преобразования типа Функция gcvt

Функция gcvt имеет прототип:

char* gcvt ( double val , int ndec , char *buf ) ;

и осуществляет конвертирование числа val типа double в строку, помещая ее в буфер buf. Если число цифр, подлежащих преобразованию, меньше целого числа, указанного в ndec, в преобразованном числе указываются символы знака и десятичной точки, при этом младшие разряды дробной части отбрасываются. В противном случае число преобразуется в экспоненциальную форму. Функция возвращает указатель на начало сформированной строки.

37

Функции преобразования типа Функция gcvt

38

Строки и указатели

К каждой строке можно обратиться с помощью указателя на его первый символ.

39

Строки и указатели

Строки и указатели

Что напечатает следующая программа?

41

Строки и указатели

char *c[]={"ENTER", "NEW", "POINT" , "FIRST“}

c - массив ссылок на символ. Элементы c инициализируются так, что они указывают на массивы

символов "ENTER", "NEW", "POINT" и "FIRST". char **cp[]={ c+3,c+2,c+1,c };

**cp[] соответствует символу, *cp –ссылке на символ и cp[]

-ссылке на ссылку на символ. Элементы cp

инициализируются так, что они указывают на элементы c. char ***cpp = cp;

***cpp дает символ, **cpp - ссылку на символ, *cpp - ссылку на ссылку на символ, наконец, cpp - ссылка, указывающая на ссылку на ссылку на символ.

42