무리스

반응형

[패스트캠퍼스 수강 후기] {C++ 실력완성} 100% 환급 챌린지 {13} 회차 미션

 

안녕하세요. 무리스입니다.

토요일 낮에 쉬고 밤에 패스트캠퍼스 환불챌린지 미션을 하러 왔습니다.

오늘 13회차 미션을 시작하겠습니다.

 

13회차는 37, 38, 39강으로 구성됩니다.

37강에서는 복합데이터 마지막인 Range-based for문입니다.

저희가 지금까지 어떤 배열을 순회할 때는 for문을 이용을 해서

for문을 i 변수를 index 변수로 선언한 다음에 그 변수를 가지고 조회를 했었습니다.

 

int main()

{

   int arr[5] = {1, 2, 3, 4, 5};

   for (int i = 0; i < 5; ++i)

   {

       count << arr[i] << endl;

   } // 지금까지 했던 방식입니다.

 

   for (int num : arr)

   {

       cout << num << endl;

   }

} // 이런 식으로 활용할 수 있습니다.

strict Person

{

   float weight;

   float height;

};

 

int main()

{

   Person persons[] = {

     Person{70.f, 181.f},

     Person{56.2f, 167.3f}

   };

 

   for (int i = 0; i < 2; ++i)

     cout << persons[i].weight << " " << persons[i].heght << endl;

   }

 

   for (Person person : persons)

   {

      cout << person.weight << " " << person.height << endl;

   }

}

동일한 결과값이 출력됩니다.

 

38강에서는 포인터문이 시작됩니다. 

38강 강의 제목은 포인터의 기본입니다.

Pointer란,

- 변수를 가리키는 변수

- 메모리 주소를 가리키는 변수

- 메모리 주소를 저장하고 있는 변수(이 부분을 기억해주세요.)

 

#include <iostream>

 

using namespace std;

 

int main()

{

   int num = 147;

   int* pointer = &num; // 가리키려는 변수

 

   cout << num << endl;

   cout << pointer << endl;

}

int main()

{

   int num = 147;

   int* pNum0 = &num;

   int* pNum1 = &num;

   int* pNum2 = &num;

 

   cout << &num << endl;

   cout << pNum0 << endl;

   cout << pNum1 << endl;

   cout << pNum2 << endl;

   cout << endl;

 

   cout << num << endl;

   cout << *pNum0 << endl;

   cout << *pNum1 << endl;

   cout << *pNum2 << endl;

   cout << endl;

 

   num = 100;

   cout << num << endl;

   cout << *pNum0 << endl;

   cout << *pNum1 << endl;

   cout << *pNum2 << endl;

}

// 직접 작성하여 출력해보시면 주소값에 대해 좀 이해하실 수 있으십니다.

 

39에서는 포인터 - 배열과 포인터의 관계에 대해서 알아보도록 하겠습니다.

 

int main()

{

   int nums [] = {1, 2, 3};

   int* pNums = nums;

 

   cout << sizeof(nums) << endl;  // 변수의 개수 3이 출력

   cout << sizeof(pNums) << endl;  // 변수의 크기가 출력됩니다. 8

}

 

다음으로

 

int main()

{

   int nums[] = {1, 2, 3};

   int* pNums = nums;

 

   cout << nums << endl;

   cout << &nums << endl;

   cout << &nums[0] << endl;

   cout << endl;

   cout << typeid(1).name() << endl;

   cout << typeid(nums).name() << endl;

   cout << typeid(&nums).name() << endl;

   cout << typeid(&nums[0].name() << endl;

}

출력해보시면 값들이 나오는데 좀 어렵습니다. 저는 이해하기 어렵네요.

그냥 그렇구나 하고 넘어가겠습니다.

 

이렇게 13회차는 마무리 되었습니다.

주말 토요일인데 공부하시느라 모두 고생이 많습니다.

주말동안 여유롭다면 평일에 했던 내용들도 복습해보면 좋을 것 같습니다.

그럼 긴 글 읽어주셔서 감사드리고 내일 14회차로 찾아 뵙겠습니다.

 

이상입니다.

 

패스트캠퍼스 C++ 강의 링크를 걸어두겠습니다. 참고하세요~
올인원 패키지 : C++ 실력 완성  https://bit.ly/33beaFj

 

C++ 실력 완성 올인원 패키지 Online. | 패스트캠퍼스

선데이토즈, ICON Foundation 출신 Core 개발자가 직접 알려주는 C++의 모든 것. 애니팡 게임을 직접 만들어 보며 어려운 C++의 원리를 이해하고 실무에서 쓸 수 있는 수준까지 만들어 드립니다.

www.fastcampus.co.kr

 

반응형

공유하기

facebook twitter kakaoTalk kakaostory naver band
loading