[초보자를 위한 C++200제] 책 정오표

[초보자를 위한 C++200제] 책 정오표

이 포스팅은 책에서 나오는 오타 및 잘못된 부분이 발견될 때마다 공지하는 공간입니다.

1. 본문 오타

  • 챕터 : 1 C++ 프로그래밍 시작하기
  • 페이지 : 23
  • 내용 : std:: 누락

수정 전

std::cout << “Hello C++ World!” << endl;

수정 후

std::cout << “Hello C++ World!” << std::endl;

  • 챕터 : 10 배열 배우기([크기])
  • 페이지 : 40
  • 내용 : 오타

수정 전

각괄호 안에는 변수를 이용해 크기를 지정할 수 있고,

수정 후

각괄호 안에는 를 이용해 크기를 지정할 수 있고,

  • 챕터 : 23 증감 연산자 이해하기(++, –)
  • 페이지 : 65
  • 내용 : 오타

수정 전

2가 출력됩니다. 12라인과 마찬가지로 먼저 사용한 뒤 증가합니다.

수정 후

2가 출력됩니다. 9라인과 마찬가지로 먼저 사용한 뒤 증가합니다.

  • 챕터 : 25 논리 연산자 이해하기 (and(&&), or(||), not(!))
  • 페이지 : 68
  • 내용 : 오타

수정 전

if (is_x = true && is_y = true)

수정 후

if (is_x == true && is_y == true)

  • 챕터 : 26 조건부 삼항 연산자 이해하기( ? : )
  • 페이지 : 71
  • 내용 : 오타

수정 전

z는 1항, x > y는 2항, 결과값을 나타내는 x : y는 3항입니다.

이 경우 x > z 조건이 true이기 때문에 x값을 z에 할당합니다.

수정 후

x > y는 1항, 앞의 결과값(true) x는 2항, 뒤의 결과값(false) y는 3항입니다.

이 경우 x > z 조건이 true이기 때문에 y을 z에 할당합니다.

  • 챕터 : 30 명시적 변환 이해하기(  ( )  )
  • 페이지 : 78
  • 내용 : 오타

수정 전

괄호() 안에 자료형을 넣어 명시적으로 변환하는 방법으로, int를 char로도 변경할 수 있습니다.

수정 후

함수 int() 안에 double 변수를 인자로 전달하여 int로 변환합니다. double 형식 이름만으론 변환할 대상이 명확치 않으므로, 23.4란 값을 보유한 double형 변수 number2를 인자로 전달합니다.

  • 챕터 : 35 순환문으로 특정 문자 개수 구하기(for)
  • 페이지 : 87, 88
  • 내용 : 라인 번호 오류

수정 전

8~10

12

13

15~19

수정 후

8~11

13

14

16~20

  • 챕터 : 50 무작위로 문자열과 배열 섞기(random_shuffle)
  • 페이지 : 113
  • 내용 : string 인클루드 오류

수정 후

4 : #include <string>

  • 챕터 : 67 숫자를 문자열로 변환하기 (to_string)
  • 페이지 : 14, 15
  • 내용 : 변수 오류

수정 전

cout << “number1 : ” << number1 << end;
cout << “number2 : ” << number2 << end;

수정 후

cout << “number1 : ” << no_str1<< end;
cout << “number2 : ” << no_str2 << end;

  • 챕터 : 183  Not a Number(NAN) 확인하기(isnan)
  • 페이지 : 367
  • 내용 : [13~16 라인 설명] 실행 결과 오타

수정 전

0 나누기 0은 정상적인 연산이 아니기 때문에 false가 리턴됩니다.

수정 후

0 나누기 0은 정상적인 연산이 아니기 때문에 true가 리턴됩니다.

  • 챕터 : 120 함수 오버로딩 이해하기
  • 페이지 : 245
  • 내용 : 오타

수정 전

오버로딩 특징은 함수 이름이 같고, 인자 종류와 개수가 다르며, 리턴값 또한 다릅니다.

수정 후

오버로딩 특징은 함수 이름이 같고, 인자 종류와 개수가 다릅니다.

2. #include 오류 (불필요한 부분 삭제)

  • 챕터 : 50 무작위로 문자열과 배열 섞기 (random_shuffle)
  • 페이지 : 113
  • 내용 : 3번 라인 #include <algorithm>

  • 챕터 : 61 문자열에서 특정 문자만 제거하기 (erase, remove)
  • 페이지 : 132
  • 내용 : #include <algorithm> 빠짐

  • 챕터 : 65 문자열 정렬하기(sort)
  • 페이지 : 139
  • 내용 : #include <algorithm> 빠짐

3. cout 오류

  • 챕터 : 53 문자열 비교하기 (string.compare)
  • 페이지 : 119
  • 내용 : 문자열 비교 결과 바뀜

수정 전

1
2
3
4
if (seven_war.compare(korea_war) == 0)
    cout << “다른 문자열입니다\n”;
else
    cout << “같은 문자열입니다\n”;
cs

수정 후

1
2
3
4
if (seven_war.compare(korea_war) == 0)
    cout << “같은 문자열입니다\n”;
else
    cout << “다른 문자열입니다\n”;
cs

 

Leave a Comment