strerror
#include <stdio.h>
#include <string.h>
void main()
{
FILE *fp;
if ((fp = fopen("data.txt", "r")) == NULL) {
fprintf(stderr, "ERROR: %s\n", strerror(errno));
exit(1);
}
exit(0);
}
strerror는 errno를 받아서 실패한 원인에 대한 메세지를 리턴한다.
그런데 perror는 더 편리하다.
perror
#include <stdio.h>
void main()
{
FILE *fp;
if ((fp = fopen("data.txt", "r")) == NULL) {
perror("ERROR"); // 오류가 발생했을 때 오류 출력시에 앞에 붙는 PREFIX를 인자로 받는다.
exit(1);
}
exit(0);
}
'프로그래밍 > C' 카테고리의 다른 글
call-by-reference in C? (0) | 2014.09.11 |
---|---|
for 문 multiple 조건 & 처리 (0) | 2014.06.05 |
malloc 를 캐스팅 하지 말자. (0) | 2014.05.29 |
strtok에 NULL을 전달하는 이유 (0) | 2014.05.29 |
함수포인터 & typdef를 이용한 함수포인터 (0) | 2014.05.07 |