Programming Storytelling

c 표준정의와 관련 에러 설명 본문

C언어

c 표준정의와 관련 에러 설명

HJdone 2019. 4. 17. 21:43

C라이브러리는 ERRNO값을 그에 맞는 문자열 표현으로 변환하는 함수를 몇 가지 제공하고 있다. 

지금부터 사용자에게 에러를 알려줄 때 사용하는 문자열들을 살펴보겠다.흔히 선행처리기정의와 ERRNO를 직접 활용해서 에러 검사와 처리 작업을 실행한다.

선행처리기 문자열 정의

설명

E2BIG 너무 긴 인자 목록
EACCESS 접근 거부
EAGAIN 재시도
EBADF 잘못된 파일 번호
EBUSY 이미 사용 중인 디바이스나 리소스
ECHILD 자식 프로세스 없음
EDOM 함수영역을 넘어선 수학 인자
EEXIST 이미 존재하는 파일
EFAULT 잘못된 주소
EFBIG 너무 큰 파일
EINTR 인터럽트가 걸린 시스템 호출
EINVAL 유효하지 않은 인자
EIO 입출력 에러
EISDIR 디렉터리임
EMFILE 열린 파일이 너무 많음
EMLINK 너무 많은 링크
ENFILE 파일 테이블 넘침
ENODEV 그런 디바이스 없음
ENOENT 그런 파일이나 디렉터리 없음
EOEXEC 잘못된 실행 파일 형식
ENOMEM 메모리 부족
ENOSPC 디바이스에 남은 공간 없음
ENOTTY 부적절한 입출력 제어 연산
ENXIO 그런 디바이스나 주소 없음
EPERM 허용되지 않은 연산
EPIPE 파이프 깨짐
ERANGE 너무 긴 결과
EROFS 읽기 전용 파일시스템
ESPIPE 유효하지 않은 탐색
ESRCH 그런 프로세스 없음
ETXTBSY 이미 사용 중인 텍스트 파일
EXDEV 적절하지 않은 링크

perror()는 str이 가리키는 문자열 뒤에 콜론(:)을 붙인 다음에 errno가 기술하는 현재 에러를 문자열로 바꿔 표준 에러(

stderr:standard error)로 내보낸다.

'C언어' 카테고리의 다른 글

다중 입출력 방식 select()/poll()  (0) 2019.04.18
지역변수와 전역변수 알아보기  (0) 2019.04.15
문자열 관련 함수에 대하여  (0) 2019.04.15