NULL GUARD? 예외처리!
2024. 2. 27. 19:07ㆍC언어
42에서 불리는 NULL GUARD라는 것이 있다.
이는 NULL이 발생할 상황을 예외처리 해주는 것이다.
char *str; // 초기화되지 않은 포인터
if (str == NULL)
{
//포인터가 NULL을 가리킴
}
이와 같이 초기화하지 않은 포인터는 'NULL'을 가리킨다.
if (!(str = (char *)buf))
return (NULL);
이 조건은 str에 (char *)buf의 값을 대입한 후에 str이 NULL인지를 확인한다.
즉, str에 (char *)buf의 값을 대입했을 때 실패하면(즉, str이 NULL인 경우) 조건은 참이 됩니다.
이렇게 예상치 못한 경우에 NULL이 발생할 수 있는 상황을 예외처리 해준다.
'C언어' 카테고리의 다른 글
포인터 연산 (0) | 2024.03.08 |
---|---|
unsigned char (0) | 2024.03.08 |
size_t (1) | 2024.03.08 |
문자열 포인터 길이 확인 시 주의사항 (0) | 2024.02.29 |
배열과 포인터 (0) | 2024.02.27 |