목록cpp (17)
삶의 공유

출저 : 책, 전문가를 위한 C++ 메모리 공간을 적당히 할당하기만 하면 어떠한 값이라도 힙에 저장할 수 있다. 예를 들어 정수값을 힙에 저장하려면 정수 타입에 맞는 메모리 공간을 할당해야하는데 이때 다음과 같이 포인터를 선언해야 한다. int* myIntegerPointer; int 타입 뒤에 붙은 별표(*)는 이 변수가 정수 타입에 대한 메모리 공간을 가르킨다는 것을 의미한다. 이 때 포인터는 동적으로 할당된 힙 메모리를 가리키는 화살표와 같다. 아직 값을 할당 하지 않았기 때문에 포인터가 구체적으로 가리키는 대상은 없다. 이를 초기화 되지 않은 변수 라 부른다. 변수를 선언한 후에는 반드시 초기화 해야한다. 특히 포인터 변수는 초기화 하지 않으면 어느 메모리를 가르키는지 알수 없기 때문에 반드시 초..

출저 : 책, 전문가를 위한 C++ ① 반복문 컴퓨터는 같은 일을 계속 반복하는데 뛰어나다. 이를 위해 C++는 while, do.while,for, 범위기반 for 등 네가지 반복 메커니즘을 제공한다. ② while문 while문은 주어진 표현식이 true가 될 때 까지 일정한 코드 블록을 계속해서 반복한다. 다음 코드는 This is silly. 라는 문장을 다섯번 출력한다. #include int main() { int i = 0; while (i < 5) { std::cout

출저 : 책, 전문가를 위한 C++ 함수 규모가 어느 정도 큰 프로그램에서 코드를 모두 main()안에 담으면 관리하기 힘들어진다. 프로그램의 가독성을 높이려면 함수 단위로 간결하게 나눠서 작성해야 한다. C++에서 함수를 사용하려면 반드시 사용하려는 위치보다 앞에서 선언해야 한다. 특정한 파일 안에서만 사용할 함수는 선언과 구현(정의) 모두 소스 파일 안에 작성한다. 반면 함수를 다른 모듈이나 파일에서도 사용해야 한다면 그 함 수는 헤더 파일에 작성하고 구현은 소스파일에 작성한다. ※ 함수를 선언하는 문장을 함수 프로토타입 또는 함수 헤더라 부른다. 함수의 구체적인 내용은 보지 않고, 그 함수에 접근하는 방식만 표현한다는 의미가 강하다. 또한 함수의 리턴 타입을 제외한 함수 이름, 매개변수 목록을 함수..

출저 : 책, 전문가를 위한 C++ 조건문을 사용하면 어떤 값이 참 또는 거짓인지에 따라 주어진코드를 실행할지 결정할 수 있다. C++ 에서 지원하는 조건문 중에서도 대표적인 세 가지 구문인 if/else문, switch문, 조건 연산자를 소개 한다. 1) if/else문 가장 흔히 사용하는 조건문은 if문이며, else문과 함께 쓸수 있다. if문에 나온 조건이 참이면 if문에 속한 코드를 실행한다. 조건이 참이 아니면 if 블록을 빠져나와 그 뒤에 나오는 문장을 실항하거나, else문이 명시돼 있다면 else문에 속한 코드를 실행한다. if(i > 4) { // 뭔가 작업한다. } else if ( i > 2) { // 다른 일을 한다. } else { // 다른 일을 한다. } if 문 뒤에 소괄호..

출저 : 책, 전문가를 위한 C++ 변수이 값을 변경 할수 없다면 변수를 사용할 이유가 없다. 다음 표는 C++에서 변수값 변경 용도로 가장 흔히 사용되는 연산자와 사용예를 보여주고 있다. C++연산자는 이항(바이너리) 연산자, 단항(유너리) 연산자, 삼항(터너리) 연산자로 분류 할 수 있다. 다음 코드는 가장 자주 사용 되는 변수 타입과 연산자를 사용하는 예를 보여주고 있다. #include using namespace std; int main() { int someInteger = 256; short someShort; long someLong; float someFloat; double someDouble; someInteger++; // 257 someInteger *= 2; // 514 some..

출저 : 책, 전문가를 위한 C++ 리터럴(literal)은 표시한 숫자나 스트링과 같은 값을 의미한다. C++는 다양한 표준 라이브러리를 제공한다. 숫자(123)는 다음과 같은 리터럴로 표현 할 수 있다. 십진수 리터럴 : 123 8진수 리터럴 : 0173 16진수 리터럴 : 0x7B 이진수 리터럴 : 0b1111011 부동 소수 값 (예, 3.14f) 배정도 부동 소수점 값(예, 3.14) 단일 문자(예 : 'a') '0'으로 끝나는 문자 배열(예 : "character array") 숫자 리터럴에서는 자릿수 구분자를 사용 할 수 있다. 자릿수 구분자는 작은 따옴표로 표현한다. 23'456'789 0.123'456f 변수는 코드 안 어디에서나 선언할 수 있으며, 현재 블록 안에서 변수를 선언한 줄 다..