"만화가 있는 C" 2nd Edition, 성안당
아래 링크에서 튜토리얼을 시청할 수 있습니다
https://www.youtube.com/playlist?list=PLrrTotxaO6kjxlHovqDNTdSFZ8tcAvQkO
- 왜 언어의 이름이 C++죠?
- C++와 C, 무엇이 다른가?
- 환경
- Visual Studio 2013 프로젝트 설정
- int가 차지하는 메모리의 크기
- 아규먼트와 파라미터
- 관례
- 이젠 할 수 있다!
- 함수도 선언해야 한다
- 소스 문자 집합
- 보충해 주는 수: 보수
- 비트 플래그, 비트 마스크
- 초기화
- 함수형 초기화
- 실수는 어떻게?
- 부동소수 표현
- 부동소수의 가감승제
- 형의 종류
- 특별한 형 void
- 특정한 문자를 강조하기
- C++11: 원시 문자열
- 문자열은 포인터 표현
- 포인터의 포인터, 함수 포인터
- 문장의 종류
- 산술
- 할당
- 비트
- C++에서만 사용 가능
- new
- delete
- typeid
- dynamic_cast
- 콤마
- 조건
- 논리
- 후위 표기
- 전처리
- 참조/역참조
- 관계
- sizeof
- 형 변환
- 함수형 형 변환
- 스택: 자료구조의 정상
- &의 역할
- scanf()에 &를 적어야 하는 이유
- 포인터를 바꾸려면
- if
- switch
- switch를 보는 컴파일러의 입장
- for
- while
- do...while
- 볼런드 C++ 3.1인 경우
- 볼런드 C++ 4.5인 경우
- 볼런드 C++ 빌더인 경우
- 마이크로소프트 비주얼 C++ 4.2인 경우
- 마이크로소프트 비주얼 C++ 5.0인 경우
- Visual Studio 2013의 경우
- 스택
- C++11에서 auto의 의미
- 힙
- 레지스터
- 파일
- 가시범위에 의한 구분
- 블록 범위
- 전역 범위
- 프로토타입 범위
- static에 관한 진실
- 차원
- 같은 형의 변수를 여러 개 선언하는 법
- 내용 연산자 []
- 이차원 배열
- '포인터 + 1'의 의미
- 3차원 이상의 배열
- 배열의 전달
- 포인터 배열
- 울타리 막대기 문제: 가장 자리 문제
- 진보된 주제
- 점수에 따라 등급을 출력하는 경우
- 기교
- 임의의 숫자를 토글하려면
- 임의의 사상을 구현
- 포인터의 포인터
- 참조
- 가용 공간 리스트
- new와 delete
- 2차원 배열의 할당
- typedef
- 범위
- enum: 열거형
- 컴파일러의 입장
- 클래스에서 enum의 사용
- 왜 이것이 필요한가?
- 문법
- 구조체 멤버 참조 연산자 . 과 ->
- 구조체 포인터가 사용된 경우
- 구조체의 필드를 바라보는 컴파일러의 입장: 상대 주소
- 구조체의 초기화
- 구조체의 전달, 리턴
- 비트 필드 구조체
- 비트 필드 클래스
- 왜 비트 필드 구조체를 사용하죠?
- 구조체 필드, 자기참조 구조체와 구조체 배열
- 불완전 선언
- 공용체
- 무명 공용체
- 연결 리스트
- 핸들이란?
- 파일의 사용
- 파일 포인터
- 이진 파일 vs. 텍스트 파일
- 고전 그러나 아스키
- 텍스트 파일의 처리
- 이진 파일의 처리
- 버퍼링
- 함수 포인터가 필요한 경우
- 함수 포인터 선언
- 함수 포인터 배열
- 오버로드된 함수의 주소
- 디폴트 파라미터
- 함수 포인터 형의 정의
- 멤버 함수의 주소
- C++의 새로운 연산자 .와 ->
- 멤버 함수 포인터의 응용
- #include
- #define
- 왜 매크로 상수를 사용하는가?
- 매크로 함수
- 관례
- 미묘한, 하지만 중요한 문제
- #if와 defined 연산자
- #undef,#line,#error와 #pragma
- 미리 정의된 매크로
- 운영체제나 환경에 의존적인 설정이 필요하다면
- 스택 동작
- 1개의 형과 3개의 매크로
- 다른 예
- 옛날 옛적 8bit와 16bit 시절
- 어려운 선택, 세그멘테이션
- 인텔의 선택: 세그멘테이션
- 64K의 한계
- 메모리 모델
- 선형 주소
- 동적 할당, 그 내부
- 최소 블록: 패러그래프
- 단편화
- 외부 단편화
- C 표준라이브러리 헤더 파일들
- 형 지원
- 동적 메모리 할당
- 에러 처리
- 프로그램 유틸리티
- 가변 인자
- 날짜/시간 함수들
- 스트링 라이브러리
- 알고리즘 함수
- 수치 함수들
- 입출력 지원 함수들
- 지역화 함수들
- 원자 연산 라이브러리
- 쓰레드 지원 라이브러리
- 좀 더 자연스러운 구조체
- C++을 배우려는 독자들에게
@