본문 바로가기

Programing10

[C++ 독학] 포인터 <C++ 의 기초> 05 포인터 포인터(pointer)는 변수나 자료의 주소 값을 저장하는 변수이다. 일반적인 변수(int, char등) 는 정수, 문자와 같은 자료를 저장하는 것과 같이 포인터는 어떤 변수의 주소 값을 저장하는 변수라고 생각한다. 포인터는 다음과 같이 타입과 변수이름 사이에 '*' 아스트릭(asterisk mark)을 추가해 선언한다. int *ptr; 포인터의 값으로는 변수의 주소를 넘겨주어야 하는데 변수의 주소는 '&' 앰 퍼센트(ampersand) 기호를 사용해서 접근한다. int var = 10; int *ptr = &var; // 변수 var의 주소값 참조 int arr[5]; int *arrPtr = arr; // 배열 arr의 첫번째 주소 참조 만약 포인터 변수를 출력하면 참조한 변수의 주소값이 나.. 2022. 4. 5.
[C++ 독학] 배열 <C++기초> 04 배열 배열은 같은 타입의 변수를 나열해 놓은 것입니다. 회사 직원 10명의 아이디를 저장해야 된다고 생각해보면 다음과 같이 변수 10개를 생성해야 합니다. int id1; int id2; int id3; ... int id10; 이는 굉장히 귀찮은 일입니다. 만약 id가 100개, 1000개가 된다면 변수를 1000개나 생성해야 하는 고역을 겪을 수도 있습니다. 우리는 이럴 때 배열을 사용할 수 있습니다. 배열의 선언은 다음과 같습니다. int myArr[10]; 변수와 같이 생성하다가 뒤에 대괄호[] 안에 숫자를 넣은 형태입니다. 직관적으로 봤을 때 10개의 변수를 나열할 수 있도록 배열을 생성해 주었습니다. 이런 배열을 초기화는 다음과 같이 할 수 있습니다. int myArr[10] = {10,20,.. 2022. 3. 31.
[C++ 독학] 제어문 <C++기초> 03 코드의 흐름을 제어하는 제어문! 조건 제어문 우선 조건제어문의 예시를 보며 구체적으로 살펴보겠습니다. 예를들어 'a'라는 변수의 값이 2이상 일 때 에만 실행돼야하는 코드가 있다고 생각해봅시다. 우리는 먼저 a가 2라는 것을 확인하고 맞을 때 실행시키는 코드와 아닐 때 실행시키는 코드로 나눠야됩니다. if-else if-else문 if문은 조건이 참(ture)일 경우와 거짓(false)일 경우로 나뉜다. if(조건){ 코드(1) } else{ 코드(2) } if문은 이런식으로 사용되게 됩니다. 이 때 조건은 'a가 2이상 일 때'를 말하는 것이고 참일 경우에 if 블록 안에 있는 코드(1)를 실행시킵니다. 여기서 블록이란 if문 뒤에 중괄호 '{' 로 시작해서 중괄호 '}' 로 끝나는 공간을 말합니다. .. 2022. 3. 17.
[C++ 독학] 전처리 지시자, 헤더파일 전처리 지시자란? C++의 소스코드는 빌드(build)되는 과정에서 전처리 -> 컴파일 -> 링크의 순서를 거칩니다. 그중 전처리(preprocessing) 과정은 프로그램을 컴파일하기 전에 필요한 메타 데이터와 매크로 처리, 파일 포함 및 언어 확장 등의 사전처리 과정을 뜻합니다. 또한 전처리를 하는 프로그램을 전처리기(preprocessor)라고 부릅니다. 지시자(지시문)는 C++에서 일반적으로 전처리할때 쓰입니다. '#'으로 시작하며 자주 쓰는 전처리 지시자는 #include, #define, #ifdef 등이 있습니다. 자주 쓰는 전처리 지시자 전처리 지시자 기능 사용 예 #include [파일] 지정한 '파일'의 내용을 지시자 위치에 넣는다. 다른 곳에 정의된 함수를 사용할 목적으로 해당 함수의.. 2022. 3. 11.