다라다라V
article thumbnail
728x90
반응형
본 글은 "황기태"님의 [명품 C++ Programming]의 연습 문제 답을 공유하고자 작성되었으며, 필자가 직접 문제를 풀며 작성한 것이기에 오류가 있을 수 있습니다. 댓글로 알려주시면 반영하도록 하겠습니다.

시리즈 보기
[C++] 명품 C++ Programming 1장 연습 문제 풀이 (이론 문제)
[C++] 명품 C++ Programming 1장 연습 문제 풀이 (실습 문제)
[C++] 명품 C++ Programming 2장 연습 문제 풀이 (이론 문제)
[C++] 명품 C++ Programming 2장 연습 문제 풀이 (실습 문제)
[C++] 명품 C++ Programming 3장 연습 문제 풀이 (이론 문제)
[C++] 명품 C++ Programming 4장 연습 문제 풀이 (이론 문제)
[C++] 명품 C++ Programming 4장 연습 문제 풀이 (실습 문제)
[C++] 명품 C++ Programming 5장 연습 문제 풀이 (이론 문제)
[C++] 명품 C++ Programming 6장 연습 문제 풀이 (이론 문제)
[C++] 명품 C++ Programming 7장 연습 문제 풀이 (이론 문제)
[C++] 명품 C++ Programming 8장 연습 문제 풀이 (이론 문제)
[C++] 명품 C++ Programming 8장 연습 문제 풀이 (실습 문제)
[C++] 명품 C++ Programming 9장 연습 문제 풀이 (이론 문제)
[C++] 명품 C++ Programming 9장 연습 문제 풀이 (실습 문제)
[C++] 명품 C++ Programming 10장 연습 문제 풀이 (이론 문제)
[C++] 명품 C++ Programming 10장 연습 문제 풀이 (실습 문제)
[C++] 명품 C++ Programming 11장 연습 문제 풀이 (이론 문제)
[C++] 명품 C++ Programming 11장 연습 문제 풀이 (실습 문제)
[C++] 명품 C++ Programming 12장 연습 문제 풀이 (이론 문제)
[C++] 명품 C++ Programming 12장 연습 문제 풀이 (실습 문제)
[C++] 명품 C++ Programming 13장 연습 문제 풀이 (이론 문제)

 

💡 

[정답]

 

💡 

[정답]

 

💡 

[정답]

 

💡 

[정답]

 

💡 

[정답] 100

 

💡 

[정답] 3aa

 

💡 

[정답] 4

 

💡 

(1)

[정답] 0을 다루지 않음

 

(2)

[정답] 0

 

(3)

[정답] 4

 

 

💡

(1)

[정답] 10 이 출력됨

 

(2)

[정답] 음수를 다루지 않음-3 이 출력됨

 

💡 

[정답] throw n; 문장이 try 블록에 들어가있지 않아 강제 종료되고 오류 메시지가 출력됩니다.

 

💡

[정답]

int get() throw(char*) {
	int n;
	cout << "0에서 10까지의 수를 입력>>";
	cin >> n;
	if (n < 0) throw "음수 입력 불가";
	if (n > 0) throw "너무 큰 숫자";
	return n;
}

 

💡

[정답] 다음의 함수는 int 타입의 예외를 던집니다.

 

 

💡 

[정답]

 

💡 

[정답] 예외는 char* 타입으로 던져지므로 throw()가 수정되어야합니다.

bool isEven(int x) throw(char*)

 

💡 

[정답] 이름 규칙, naming mangling

 

💡 

[정답]

 

💡 

[정답] C언어는 컴파일할 때 함수의 매개 변수 타입이나 개수를 고려하지 않고 함수 이름에 _를 붙이는 이름 규칙을 사용합니다. 따라서 소스 파일에 같은 이름으로 중복 작성된 함수들은 컴파일 후 모두 동일한 이름으로 목적 코드가 생성됩니다.

 

💡 

[정답] _print, _main

 

💡 

[정답]

add() 함수는 C언어로 작성된 C함수 입니다. C++에서 사용하려면 extern를 사용하여야합니다.

extern "C" int add(int x, int y);
int main() {
	int n = add(3, 5);
}

 

💡 

(1)

[정답] 오류가 발생하지 않습니다.

 

(2)

[정답] 오류가 발생하지 않습니다.

 

(3)

[정답] 오류가 발생하지 않습니다.

 

(4)

[정답] 오류가 발생합니다.

extern "C" {
    int substract(int x, int y);
    int multiply(int x, int y);
}

 

반응형
profile

다라다라V

@DaraDaraV

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!