C 언어
따라서 C 프로그래밍은 오류 처리에 대한 직접적인 지원을 제공하지 않지만 시스템 프로그래밍 언어이므로 반환 값의 형태로 낮은 수준에서 액세스를 제공합니다. 대부분의 C 또는 Unix 함수 호출은 오류의 경우 -1 또는 NULL을 반환하고 오류 코드 errno를 설정합니다. . 전역 변수로 설정되며 모든 함수 호출 중에 오류가 발생했음을 나타냅니다.
따라서 C 프로그래머는 반환 값을 확인하고 반환 값에 따라 적절한 조치를 취할 수 있습니다. 프로그램을 초기화할 때 errno를 0으로 설정하는 것이 좋습니다. 값 0은 프로그램에 오류가 없음을 나타냅니다.
C 프로그래밍 언어는 perror()를 제공합니다. 및 strerror() errno와 관련된 문자 메시지를 표시하는 데 사용할 수 있는 기능 .
오류() 함수는 전달한 문자열을 표시하고 그 뒤에 콜론, 공백, 현재 errno 값의 텍스트 표현을 표시합니다.
strerror() 현재 errno 값의 텍스트 표현에 대한 포인터를 반환하는 함수입니다.
오류 조건을 시뮬레이션하고 존재하지 않는 파일을 열어 보겠습니다. 여기서는 사용법을 보여주기 위해 두 함수를 모두 사용하고 있지만 오류를 인쇄하는 데 하나 이상의 방법을 사용할 수 있습니다. 주목해야 할 두 번째 중요한 점은 stderr을 사용해야 한다는 것입니다. 모든 오류를 출력하는 파일 스트림.
#include <stdio.h> #include <errno.h> #include <string.h> extern int errno ; int main () { FILE * pf; int errnum; pf = fopen ("unexist.txt", "rb"); if (pf == NULL) { errnum = errno; fprintf(stderr, "Value of errno: %d\n", errno); perror("Error printed by perror"); fprintf(stderr, "Error opening file: %s\n", strerror( errnum )); } else { fclose (pf); } return 0; }
위의 코드를 컴파일하고 실행하면 다음과 같은 결과가 생성됩니다. -
Value of errno: 2 Error printed by perror: No such file or directory Error opening file: No such file or directory
어떤 수를 나눌 때 프로그래머가 제수가 0인지 확인하지 않고 결국 런타임 오류가 발생하는 것이 일반적인 문제입니다.
아래 코드는 나누기 전에 제수가 0인지 확인하여 이 문제를 수정합니다. -
라이브 데모#include <stdio.h> #include <stdlib.h> main() { int dividend = 20; int divisor = 0; int quotient; if( divisor == 0){ fprintf(stderr, "Division by zero! Exiting...\n"); exit(-1); } quotient = dividend / divisor; fprintf(stderr, "Value of quotient : %d\n", quotient ); exit(0); }
위의 코드를 컴파일하고 실행하면 다음과 같은 결과가 생성됩니다. -
Division by zero! Exiting...
성공적인 작업 후 프로그램이 나올 경우 EXIT_SUCCESS 값으로 종료하는 것이 일반적입니다. 여기서 EXIT_SUCCESS는 매크로이며 0으로 정의됩니다.
프로그램에 오류 조건이 있고 나가려는 경우 -1로 정의된 상태 EXIT_FAILURE로 종료해야 합니다. 따라서 위의 프로그램을 다음과 같이 작성해 보겠습니다. -
라이브 데모#include <stdio.h> #include <stdlib.h> main() { int dividend = 20; int divisor = 5; int quotient; if( divisor == 0) { fprintf(stderr, "Division by zero! Exiting...\n"); exit(EXIT_FAILURE); } quotient = dividend / divisor; fprintf(stderr, "Value of quotient : %d\n", quotient ); exit(EXIT_SUCCESS); }
위의 코드를 컴파일하고 실행하면 다음과 같은 결과가 생성됩니다. -
Value of quotient : 4
C 언어
Okuma OSP-P300S/P300L 알람-A 목록입니다.Okuma cnc 제어 장치를 사용하여 cnc 기계에서 작업하는 cnc 기계공을 위한 것입니다. 오쿠마 알람 분류 OSP와 관련된 알람은 다음과 같이 5가지 유형으로 분류됩니다. 알람 P 알람 A(아래 목록) 알람 B 알람 C 알람 D 오류 다음은 Okuma OSP-P300S/P300L CNC 시스템용 Okuma A 유형 알람 목록입니다. 오쿠마 알람 A 목록 1071 메모리 보드 배터리가 소모되었습니다. 빨리 교체하세요! 1089 PLC 알람 번호가 잘못되었습
CNC 기계 기술자를 위한 Fanuc 15i 알람/오류. Fanuc 15i 알람 프로그램 오류/알람(P/S 알람) 프로그램 오류/프로그램 및 동작에 대한 알람(P/S 알람) PS001 축 제어 모드가 잘못됨 PS003 너무 많은 자릿수 PS006 빼기 기호 불법 사용 PS007 소수점 불법 사용 PS010 부적절한 G–코드 PS011 부적절한 NC–주소 PS012 잘못된 중단점 단어 PS013 불법 POS. OF 프로그램 번호. PS014 프로그램 번호의 불법 형식 PS015 한 블록에 너무 많은 단어 PS016 EOB를 찾