반응형
#assert #조건 #검사 #abort
#include <assert.h> void assert(int test); |
assert 함수는 if문으로 확장된 매크로입니다. 인수로 사용된 test가 0이면 assert 함수는 stderr에 메시지를 출력하고 abort 함수를 호출하여 프로그램을 종료시킵니다.
assert 함수는 다음과 같은 메시지를 출력합니다.
Assertion failed: test, filename, line linenum |
filename과 linenum은 assert 매크로를 포함하는 파일명과 라인 번호를 나타냅니다.
#define NDEBUG // No Debugging #include <assert.h> |
#include <assert.h> 앞에 #define NDEBUG 명령문을 사용하면 assert 명령은 주석으로 처리됩니다.
#include <stdio.h>
//#define NDEBUG
#include <assert.h>
int div(int a, int b)
{
if (b == 0) return 0;
printf("%d\n", a / b);
return 1;
}
int main()
{
//assert(div(10, 5));
assert(div(10, 0));
return 0;
}
반응형
'C_C++ > C_라이브러리_함수' 카테고리의 다른 글
(C언어) atoi, atol: 문자열을 정수로 변환 (0) | 2023.01.30 |
---|---|
(C언어) atof, atold: 문자열을 부동소숫점 숫자로 변환 (0) | 2023.01.30 |
(C언어) atan, atanl: 아크 탄젠트(arc tangent)값 계산 (0) | 2023.01.30 |
(C언어) asin, asinl: 아크 사인(arc sine) 값 계산 (0) | 2023.01.30 |
(C언어) acos, acosl 함수: 아크 코사인(arc cosine) 값 계산 (1) | 2023.01.27 |