Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ТРПП. ЛЕКЦИИ! Готовимся к экзамену))).docx
Скачиваний:
18
Добавлен:
10.12.2018
Размер:
175.63 Кб
Скачать

1.6.7. Некоторые функции проверки и преобразования символов

Функции библиотеки ctype.h

isalpha(c) – возвращает значения Истина, если с – буква, Ложь – в остальных случаях;

с – символ

islower(c) – возвращает значения Истина, если с – строчная буква, Ложь – в остальных случаях; с – символ

isupper(c) –возвращает значения Истина, если с – заглавная буква, Ложь – в остальных случаях; с – символ

isdigit(c) – возвращает значения Истина, если c – цифра от 0 до 9, Ложь – в остальных случаях; с – символ

isalum(c) – возвращает значения Истина, если с – буква или цифра, Ложь – в остальных случаях; с – символ

ispunct(c) – возвращает значения Истина, если с – знак пунктуации, Ложь – в остальных случаях; с – символ

tolower(c) – преобразует символ к строчному; с – символ

toupper(c) – преобразует символ к заглавному; с – символ.

Тема 1.7. Работа с памятью

Цель изучения темы

  • познакомиться с некоторыми функциями и операциями для работы с памятью

Среди языков программирования C++ выгодно отличается удобной работой с памятью. Именно поэтому С++ часто используется для системного программирования.

Разберем некоторые функции и операции для работы с памятью.

Функция malloc

Функция malloc выделяет блок памяти. Размер блока задается в байтах.

Функция malloc возвращает адрес выделенного блока или ноль, если не удалось выделить память. Функция malloc содержится в библиотеках alloc.h и stdlib.h.

Пример.

char *str; // Указатель на строку символов

str = malloc(10); // Выделяем 10 байт, адрес выделенной памяти записываем в str

if ! ( str )

{

cout << "Не хватает памяти";

exit (0);

}

strcpy(str, "Hello"); // Копируем строку "Hello" в блок памяти с адресом str

Функция malloc часто используется вместе с оператором size. С помощью size можно определить, сколько байт выделено под переменную или тип данных.

Функция free

Функция free освобождает память, выделенную функцией malloc.

Пример.

Освободим память, выделенную в предыдущем примере:

free (str);

Операция new

В версиях, начиная с 3-й, Borland C++ содержит операции (операторы) new и delete. Они являются улучшенными вариантами функций malloc и free.

Операция new позволяет выделять память, необходимую для размещения переменной, структурной переменной или массива. Для переменной необходимо указывать тип и в случае массива – размер. Операция new может записывать значение в созданную переменную.

В случае успешного завершения new возвращает адрес созданной переменной.

В отличие от функции malloc, при использовании операции new не нужно указывать количество байт памяти, которое необходимо выделить.

Примеры:

/* Опишем указатели на целую и вещественную переменные и указатель на символ */

int * uk_i;

double * uk_d;

char * uk_c;

/* Выделим память под число типа int адрес памяти присвоим указателю uk_i */

uk_i = new int;

* uk_i=10; // запишем число 10 в ячейку памяти с адресом uk_i;

/* Выделим память под число типа double, запишем в нее число 3.1415 и

присвоим указателю uk_d ее адрес */

uk_d=new double (3.1415);

/* Выделим память под число

uk_с=new char [ 60 ] ;

Можно выполнить проверку:

If !(uk_i && uk_d && uk_c)

{

cout << "Не хватает памяти";

}