0w0
오류 처리 함수 perror함수, str-error함수 본문
오류 코드를 메시지로 변환해 줄력하는 perro, str-error 함수를 사용
perror함수
소스
[root@localhost source]# cat ex1_4.c
//perror함수 사용하기
include<stdio.h>
#include<unistd.h>
#include<errno.h>
#include<sys/errno.h>
extern int errno;
int main(void){
if(access("unix.txt",R_OK)==-1){
perror("unix.txt"); //#include<stdio.h> void perror(const char *s);
//access 함수에서 오류가 발생하면 perror 함수를 호출. perror 함수의 인자로 "unix.txt"를 지정
exit(1);
}
return 0;
}
실행 결과
[root@localhost source]# ./ex1_4
unix.txt: No such file or directory
strerror함수
소스
[root@localhost source]# cat ex1_5.c
//strerror 함수 사용하기
#include<sys/errno.h>
#include<unistd.h>
#include<stdlib.h>
#include<stdio.h>
#include<string.h>
extern int errno;
int main(void){
char *err;
if(access("unix.txt",R_OK)==-1){
err=strerror(errno);
//strerror 함수는 오류 메시지가 저장된 문자열을 가리키는 포인터를 리턴한다.
printf("error: %s(unix.txt)\n",err);
exit(1);
}
return 0;
}
실행 결과
[root@localhost source]# ./ex1_5
error: No such file or directory(unix.txt)
'Coding > System Programming' 카테고리의 다른 글
저수준 파일 입출력 (0) | 2016.10.06 |
---|---|
명령행 인자 출력 ex1_6.c ex1_7.c (0) | 2016.09.28 |
동적 메모리 할당 malloc realloc (0) | 2016.09.28 |
Makefile과 make ex1_3_main.c ex1_3_addnum.c (0) | 2016.09.27 |
시스템 호출? ex1_1.c ex1_2.c (0) | 2016.09.27 |