오류 처리는 C 언어에서 지원되지 않습니다. C 언어에서 오류 처리를 수행할 수 있는 몇 가지 다른 방법이 있습니다. 헤더 파일 "error.h"는 return 문 함수를 사용하여 오류를 인쇄하는 데 사용됩니다.
오류가 발생하면 -1 또는 NULL을 반환하고 오류 코드와 함께 errno 변수가 설정됩니다. C 언어에서 함수가 호출될 때마다 errno 변수가 연결됩니다. errno는 전역 변수이며 실행에서 오류 유형을 찾는 데 사용됩니다.
다음 표는 몇 가지 오류를 보여줍니다 -
Sr.No | 오류 및 오류 값 |
---|---|
1 | I/O 오류 5 |
2 | 해당 파일이나 디렉토리가 없습니다. 2 |
3 | 인수 목록이 너무 깁니다. 7 |
4 | 메모리 부족 12 |
5 | 권한 거부됨 13 |
C 언어에서 오류를 처리하는 몇 가지 방법이 있습니다 -
-
오류() − 이 함수는 오류를 인쇄하는 데 사용되며 현재 errno 값의 텍스트 표현과 함께 문자열을 반환합니다.
-
strerror() − 이 함수는 "string.h" 헤더 파일에 선언되어 있으며 현재 errno 값의 문자열에 대한 포인터를 반환합니다.
-
종료 상태 − 호출 함수에 오류를 알리기 위해 함수 exit()에서 사용할 수 있는 두 개의 상수 EXIT_SUCCESS 및 EXIT_FAILURE가 있습니다.
-
0으로 나눈 값 − C 언어에서 이 오류를 처리하기 위해 아무 것도 할 수 없는 상황입니다. 이 오류를 피하고 프로그램에서 'if' 조건을 사용하여 제수 값을 확인할 수 있습니다.
다음은 C 언어의 오류 처리 예입니다.
예시
#include <stdio.h> #include <stdlib.h> main() { int x = 28; int y = 8; int z; if( y == 0) { fprintf(stderr, "Division by zero!\n"); exit(EXIT_FAILURE); } z = x / y; fprintf(stderr, "Value of z : %d\n", z ); exit(EXIT_SUCCESS); }
출력
다음은 출력입니다.
Value of z : 3