C++ 예제

C Yeje



C++ 프로그래밍으로 작업해야 할 때 오류에 직면해야 하는 상황이 다를 수 있습니다. 따라서 해당 오류를 표시하기 위해 C++에서 'cerr' 키워드를 활용합니다. C++에서 오류 메시지를 인쇄하기 위해 'cerr' 개체를 활용한다고 말할 수 있습니다. 'iostream' 헤더 파일에는 이 개체의 선언이 포함되어 있습니다. 콘솔에 입력한 오류나 세부 정보를 표시하기 위해 '<<' 삽입 기호와 함께 활용됩니다. 우리는 이 가이드에서 이 'cerr' 객체를 철저하게 배울 것입니다.

예시 1:

'iostream'은 여기에 포함된 헤더 파일로, 두 메서드가 모두 내부에 선언되어 있으므로 코드에서 'cin' 또는 'cout' 메서드를 활용할 수 있도록 배치했습니다. 'cerr' 개체도 이 헤더 파일에 선언되어 있습니다. 그런 다음 'std 네임스페이스'가 있습니다. 이제 각 함수에 이 'std'를 독립적으로 추가할 필요가 없습니다.

그런 다음 여기에서 'main()'이 호출됩니다. 아래에는 'cerr' 개체를 활용하여 콘솔에 표시하려는 오류 메시지를 배치합니다. '여기에 오류가 발생했습니다!'라고 입력합니다. 삽입 기호를 배치한 후 이 'cerr'에 메시지가 표시됩니다. 이 프로그램을 실행하면 'cout'을 사용하지 않고 주어진 메시지가 표시됩니다.







코드 1:

#include

네임스페이스 표준 사용 ;

정수 기본 ( ) {

세르 << '여기서 오류가 발생했습니다!' << ;

반품 0 ;

}

산출:



'cerr <<'를 입력한 후 입력한 메시지가 이제 다음과 같은 결과에 표시됩니다.







예 2:

'iostream' 헤더 파일에는 'cin', 'cout' 메서드와 'cerr'이 모두 선언되어 있으므로 코드에서 사용할 수 있도록 여기에 헤더 파일을 추가합니다. 그 다음에는 'std 네임스페이스'가 있습니다. 그 아래에서는 'main()'이 호출됩니다. 'string' 데이터 유형의 'error_str[]'을 초기화하고 'error_str[]'에 메시지를 할당합니다. 그런 다음 오류 메시지를 배치하는 'cerr' 개체를 활용하고 이 'error_str'을 전달합니다. 따라서 이 프로그램을 실행하면 두 메시지가 모두 렌더링됩니다.

코드 2:

#include

네임스페이스 표준 사용 ;

정수 기본 ( ) {

error_str [ ] = '여기서는 문자열을 읽을 수 없습니다!' ;

세르 << '문제 발생 : ' << error_str << ;

}

산출:



이제 'cerr <<'를 입력한 후 입력한 텍스트와 'error_str'에 추가한 메시지가 결과에 표시됩니다. 결과는 다음과 같이 표시됩니다.

예시 3:

헤더 파일을 포함시킨 후 “std” 네임스페이스를 배치한 후 “main()” 메서드를 호출합니다. 이후 여기서는 'NumOfLine' 정수 변수가 선언되고 '__LINE__'으로 초기화됩니다. 이 '__LINE__'은 오류 메시지를 생성합니다. 아래에는 'cerr' 개체를 사용하고 사용자에게 표시하려는 오류 메시지를 배치합니다. 또한 코드에서 오류가 발생한 줄 번호를 표시하는 “NumOfLine” 변수를 배치합니다.

코드 3:

#include

네임스페이스 표준 사용 ;

정수 기본 ( ) {

정수 NumOfLine = __선__ ;

세르 << '여기 라인에서 오류가 발생했습니다: ' << NumOfLine ;

반품 0 ;

}

산출:

여기서는 코드의 네 번째 줄에 “__LINE__”을 추가했기 때문에 “4” 줄에서 오류가 발생한 것을 보여줍니다. 이 메시지는 C++의 'cerr' 개체를 사용하여 여기에 표시됩니다.

예시 4:

'fstream'이라는 헤더 파일을 하나 더 포함합니다. 이 'fstream' 헤더 파일은 'ofstream'과 'ifstream'의 조합이므로 C++에서 파일을 읽고 쓰거나 생성하는 데 사용됩니다. 이제 'std 네임스페이스'를 추가하고 'main()'을 호출한 후 'new_file' 변수와 함께 'fstream'을 활용합니다.

그런 다음 여기서는 'new_file'과 함께 'open()' 함수를 사용하고 파일 이름을 매개변수로 전달합니다. 열려고 하는 파일 이름은 “myTextFile.txt”입니다. 아래에서는 'if'를 활용하여 'new_file' 변수를 전달합니다. 이제 여기에서 파일을 열면 'if' 뒤의 문이 렌더링됩니다. 그렇지 않으면 오류 메시지를 표시하기 위해 “cerr” 객체를 추가하는 “else” 다음의 명령문이 렌더링됩니다.

코드 4:

#include

#include

네임스페이스 표준 사용 ;

정수 기본 ( ) {

fstream new_file ;

새로운 파일. 열려 있는 ( 'myTextFile.txt' ) ;

만약에 ( 새로운 파일 ) {

시합 << '여기서 파일이 성공적으로 열렸습니다!' ;

}

또 다른 {

세르 << '여기에서 파일을 여는 동안 오류가 발생했습니다!' ;

}

반품 0 ;

}

산출:

이전에 제공한 파일을 열 수 없습니다. 여기서는 'cerr' 개체 뒤에 삽입한 오류 메시지를 표시합니다.

예시 5:

여기서는 다른 파일을 열려고 합니다. 따라서 헤더 파일과 'std' 네임스페이스를 모두 추가합니다. 이제 'main()'을 호출한 다음 't_file' 변수와 함께 'fstream'을 활용합니다. 다음으로, 이 인스턴스에서는 'new_file'과 함께 'open()' 함수를 활용하고 파일 이름을 인수로 제공합니다. 열려는 파일의 이름은 'New.txt'입니다. 't_file' 변수를 전달하는 'if' 문을 사용합니다. 이제 파일이 열리면 'if' 뒤에 오는 줄이 렌더링됩니다. 그렇지 않은 경우 오류 메시지를 표시하기 위해 'cerr' 개체를 추가한 'else' 뒤에 오는 명령문이 렌더링됩니다.

코드 5:

#include

#include

네임스페이스 표준 사용 ;

정수 기본 ( ) {

fstream t_file ;

t_file. 열려 있는 ( '새.txt' ) ;

만약에 ( t_파일 ) {

시합 << '파일이 여기에 열려 있습니다!' ;

}

또 다른 {

세르 << '문제 발생!' ;

}

반품 0 ;

}

산출:

제공한 파일을 열 수 없습니다. 따라서 'cerr' 개체 뒤에 추가한 오류 메시지는 다음과 같이 표시됩니다.

예시 6:

여기에 코드에서 발생할 수 있는 오류를 확인하는 데 사용되는 '예외' 헤더 파일을 추가합니다. 다음에서는 크기가 '6'인 'new_array'라는 정수형 배열을 초기화합니다. 그런 다음 'int' 변수의 'new_index'를 설정하고 여기에 '7'을 할당합니다. 이제 “new_size” 변수도 초기화하고 “*(&new_arr + 1) – new_arr”를 “new_size” 변수에 할당합니다.

그런 다음 오류를 확인하고 오류 메시지를 던지는 데 사용되는 “try”, “throw” 및 “catch”를 활용합니다. 'throw' 키워드 뒤에 추가한 오류 메시지를 표시하는 'color' 개체를 활용합니다.

코드 6:

#include

#include <예외>

네임스페이스 표준 사용 ;

정수 기본 ( ) {



정수 new_arr [ 6 ] = { 1 , 9 , 4 , , 8 , 7 } ;

정수 new_index = 7 ;



정수 new_size = * ( & new_arr + 1 ) - new_arr ;

노력하다 {

만약에 ( new_index < 0 || new_index >= new_size ) 던지다 ( '인덱스가 범위 안에 없습니다. 여기서는 범위를 벗어났습니다.' ) ;



또 다른

시합 << new_arr [ new_index ] ;



}

잡다 ( const * 실수 ) {

세르 << 실수 ;

}

반품 0 ;

}

산출:

여기서는 'Index'가 범위를 벗어났음을 나타내는 오류 메시지를 렌더링하며 'cerr' 개체를 활용하면 이 오류가 발생합니다.

예시 7:

여기서는 숫자를 0으로 나눌 때 발생할 수 있는 오류를 확인해 보겠습니다. 'int' 데이터 유형 'a1'과 'a2'의 두 변수를 전달하는 'd()' 함수를 만듭니다. 아래에는 'a2==0' 조건을 전달하는 'if'를 추가합니다. 'a2'의 값이 0이면 코드에 'cerr' 개체를 배치하여 얻은 'throw' 이후에 배치한 메시지가 실행됩니다.

그런 다음 'a2' 값이 0이 아닌 경우 나눗셈의 답을 반환하는 'return'을 배치합니다. 이제 “main()”을 호출하고 “int” 변수로 초기화한 후 “x”에 “87”을 할당합니다. 그런 다음 'b' 및 'd_res' 변수도 '0'으로 초기화합니다. 여기에는 오류를 포착하는 'try'와 'catch'를 배치하고 'cerr'는 'throw' 키워드 뒤에 추가한 오류 메시지를 던집니다.

코드 7:

#include

네임스페이스 표준 사용 ;

정수 my_division ( 정수 a1 , 정수 a2 ) {

만약에 ( a2 == 0 ) {

던지다 '0으로 나누는 것은 불가능해요!' ;

}

반품 ( a1 / a2 ) ;

}

정수 기본 ( ) {

정수 엑스 = 87 ;

정수 그리고 = 0 ;

정수 d_nothing = 0 ;

노력하다 {

d_nothing = my_division ( 엑스 , 그리고 ) ;

시합 << d_nothing << ;

} 잡다 ( const * 메시지 ) {

세르 << 메시지 << ;

}

반품 0 ;

}

산출:

여기서는 숫자를 '0'으로 나누기를 원한다는 오류 메시지가 나타납니다. 이는 불가능합니다.

결론

'cerr' 객체는 여기에서 자세히 연구됩니다. 우리는 'cerr' 개체가 C++ 프로그래밍에서 오류 메시지를 표시하는 데 어떻게 도움이 되는지 정의했습니다. 우리는 오류가 발생하는 여러 조건을 배치한 여러 예를 탐색했습니다. 또한 try-catch 메소드를 배치한 후 파일 열기 코드에 “cerr” 개체를 활용했습니다. 우리는 'cerr'이 오류 메시지를 표시하는 결과와 코드를 보여주었습니다.