[Fundamental C++] 03. 빌드
·
C++/[서적] Fundamental C++ 프로그래밍 원리
1. 빌드의 구성빌드는 전처리, 컴파일, 링크 단계로 나누어질 수 있다. (1) 전처리전처리 지시문을 이용하여 컴파일 시점에 컴파일이 가능하도록 소스 파일에 원래 소스 구문을 복구하는 과정이다.#include, #define 등이 해당한다.//////////////////////////////// Main.cppvoid Func(char* str);void main(){ Func("Hello World !");}위의 코드에서는 링크 에러가 발생한다. Func 함수에 대한 선언은 했지만, 호출하는 과정에서 본체를 못 찾았기 때문이다. 따라서 #include 로 Func 본체가 정의되어있는 파일을 포함해주어야 한다. (2) 컴파일소스 파일을 기계가 읽을 수 있도록 기계어로 변환하는 과정이다. 이는 곧 ..
[Fundamental C++] 02. 선언과 정의
·
C++/[서적] Fundamental C++ 프로그래밍 원리
01. 정의해당 객체를 위한 메모리 영역을 확보하는 것 클래스 정의란 클래스가 어떻게 구성되어 있는지를 나타내는 설계도를 메모리에 저장하는 것. 개념적인 구조로서 존재할 뿐이다.멤버 객체가 선언되거나 멤버 함수가 선언 및 정의될 수 있다. 일반 객체와 함수들이 차지하는 메모리 영역은 프로세스가 사용하는 가상 메모리이다.클래스의 설계도가 저장되는 메모리 영역은 컴파일러가 사용하는 메모리이다. 실제 프로그램이 사용하는 메모리와 관련이 없다.클래스 객체에 대한 메모리가 할당될 경우 할당된 영역의 특정 부분이 멤버 객체에게 할당된다. 02. 선언어떤 객체가 존재하고 있음을 알리는 역할//////////////////////////////// A.cppint g_Val;int Func(){ return 1;..
[Fundamental C++] 01. 타입
·
C++/[서적] Fundamental C++ 프로그래밍 원리
01. 디지털화디지털화처리하고자 하는 정보를 컴퓨터가 인식할 수 있는 비트 집합으로 대응시키는 것 숫자, 시청각 정보가 디지털 대상이 된다. 최근엔 후각 정보까지 디지털화하려는 시도도 이어지고 있다. 02. 정수 타입2의 보수법1의 보수에 1을 더한 것으로, 2진수에서 각 비트를 반전시킨 후 1을 더하는 방법이다. 3이란 숫자의 2의 보수는 0011 => 1100 + 1 = 1101이 되고, 1101은 -3으로 대응된다.타입별 최솟값, 최댓값// (1) signed int 최솟값int i = 1;i = (i 비트 이동 연산자char c = 1;c = c > 7; // 1 비트 이동 연산자의 부호 유지 정책때문에  부호비트가 음수일 경우 음수의 상태가 유지된다.컴파일러 상수 한계int max1 = 184..