Подтвердить ключевое слово в C - PullRequest
2 голосов
/ 28 марта 2019

Кроме определений в учебнике по ключевому слову "assert". Каков фактический вариант использования?

Это не часто используемое ключевое слово, поэтому примеры редко встречаются для объяснения фактической реализации и ее использования в коде * 1003.*

1 Ответ

4 голосов
/ 28 марта 2019

Вы можете использовать его любым удобным для вас способом.Лично я использую его для написания простых модульных тестов, когда не хочу полагаться на какую-либо зависимость.

Некоторые люди используют его для проверки предварительных и постусловий, например:

int foo(int a, int b) {
    int result;

    assert(a > 0 && a < 150);
    assert(b > 20 && b < 1000);

    // do something with a, b and store something in result

    assert(result > -10 && result < 10);

    return result;
}

Но, пожалуйста, помните, что утверждения могут быть отключены во время компиляции, определив макрос NDEBUG.Так, например, если вы полагаетесь на это в качестве предварительных условий, вы можете удвоить их с помощью безусловных тестов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...