Russian Belarusian English German Japanese Ukrainian

Rashka.studio - игры и приложения для Android! Заходи, ждём тебя =)

Assert

CuBook05

Функция

Проверяет условия и возможность прерывания выполнения программы.
 
Синтаксис

#include <assert.h>
void assert(int test);
 
Прототип

assert.h
 
Описание

Функция assert представляет собой макрокоманду, которая расширяется до оператора if; если параметр test принимает нулевое значение, то assert прерывает программу (при помощи вызова abort) и выводит сообщение в stderr.
 
Assert выводит следующее сообщение:
Assertion failed: <test>, file <filename>, line <linenum>
 
Позиции filename и linenum, перечисленные в сообщении, являются именем исходного файла и номером строки программы, в которой появляется макрокоманда assert. Если в исходный код программы вы вставите перед оператором #include <assert.h> оператор #define NDEBUG («без отладки»), то функция assert будет воспринята как комментарий.
 
Возвращаемое значение

Нет.
 
Переносимость

Данная макрокоманда поддерживается на некоторых системах UNIX, включая Systems III и V, совместима с ANSI C.
 
Пример

#include <assert.h>
#include <stdio.h>
#include <stdlib.h>

struct ITEM {
int key;
int value;
};

void additem(struct ITEM *itemptr)
{
assert(itemptr != NULL);
}
int main(void)
{
additem(NULL);
return 0;
}
Если заметили ошибку, выделите фрагмент текста и нажмите Ctrl+Enter

Добавить комментарий


Защитный код Обновить