월 24,200원
5개월 할부 시다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 해결됨홍정모의 따라하며 배우는 C++
(9:30)검토 부탁드립니다. 보기 편하게 만들었어요.
*150% 확대해서 보면 보기 편합니다. 1. 문제 발생 // 1번 주소 값 void doSomething(int studnet_score[20]) { cout << (int)&studnet_score << endl; //@1 } // 2번 주소 값 int main() { int student_score[20] = { 1, 2, 3, 4, 5 }; cout << (int)&studnet_score << endl; // @2 doSomething(studnet_score); } @1과 @2의 주소 값이 다르다!! 2. 문제 원인! void doSomething(int studnet_score[20]) { cout << (int)&studnet_score << endl; -------------------- cout << studnet_score[0] << endl; | -> 포인터 변수들 cout << studnet_score[1] << endl; ----------------------- } // void doSomething 파라미터 안에 있는 배열은 사실 배열이 아니다! // 포인터 변수이다! // 즉, { }안에 있는 studnet_score[0]들도 포인터 매개변수들이다! 3. 주소 값이 다른 이유! // #1 int main() { int student_score[20] = { 1, 2, 3, 4, 5 }; // @1 : 난 선언과 동시에 주소값 있지롱~! cout << (int)&studnet_score << endl; doSomething(studnet_score); // @2 : 나도 주소 값 가지고 싶어!! } // #2 int main() { int student_score[20] = { 1, 2, 3, 4, 5 }; // @1 : 내꺼 줄게 같이 쓰자! cout << (int)&studnet_score << endl; doSomething(studnet_score); // @2 : 고마워!! } // #3 void doSomething(int studnet_score[20]) // @3 : 주소 받을 자리, 새로 만들어야겠네! // (@1번의 주소를 받기 위한 새로운 주소를 만듬) { cout << (int)&studnet_score << endl; // @3 : 내가 그 새로운 주소의 주인공이야! } int main() { int student_score[20] = { 1, 2, 3, 4, 5 }; cout << (int)&studnet_score << endl; doSomething(studnet_score); // @2 : void야! @1번한테 받은 주소값 보내줄게! ↑ } // #4 void doSomething(int studnet_score[20]) { cout << (int)&studnet_score << endl; // @3 : 나는 @1번의 주소를 가져오기 위한 주소값이야! cout << (int)&studnet_score[0] << endl; // @4 : 야!! @3번! 너 나랑 주소값이 다르잖아! } // #5 void doSomething(int studnet_score[20]) { cout << (int)&studnet_score << endl; cout << (int)&studnet_score[0] << endl; // @4 : @1의 첫 번쨰 주소값하고 같구나! } int main() { int student_score[20] = { 1, 2, 3, 4, 5 }; cout << (int)&studnet_score << endl; // @1 : 반갑다, @4번! 나랑 같은 주소값이야! cout << (int)&studnet_score[0] << endl; // @5 : 어서와, @4번. 나도 너랑 같아. doSomething(studnet_score); } 4. 정리 main의 배열 student_score[0](첫 번째) 주소 값 복사 -> void의 파라미터는 주소값을 받기 위한 주소 만듬 -> void의 포인터 배열은 [0](첫 번째)부터 main의 student_score과 같은 주소지를 갖음 의문점) <2 .문제 원인>에서 void 안에 있는 변수는 모두 포인터 변수라고 하셨는데, 그러면 아치피 main에서 주소값 받기 위해서 만든 새로운 주소값으로 쭉쭉 나가면 될건데... 어째서 [0](첫 번째)부터는 main 배열[0](첫 번째)와 다시 주소가 같게 한 걸까요...? 궁금합니다..
- 해결됨홍정모의 따라하며 배우는 C++
(질문 아님) 구구단 만들기.
1단계 for (int two = 2, i = 1; i < 10; ++i) { cout << two; cout << " x "; cout << i; cout << " = " << (two * i) << endl; } 2단계 for (int i = 2; i < 10; ++i) { cout << i << "단" << endl; for (int j = 1; j < 10; ++j) { cout << i; cout << " x "; cout << j; cout << " = "; cout << (i * j) << endl; } } 더 다양한 방법이 있다면 올려주세요. 같이 공부하고 싶어요..
- 미해결홍정모의 따라하며 배우는 C++
(42:20)코딩에 문제가 없어 보이는데 빌드가 안됩니다.
//header //main cpp //test cpp // problem (영상 32:20와 동일함) LNK2005와 LNK1169입니다. 영상 (32:20)과 같은 문제가 발생했습니다. 추가된 파일도 없으며, (43:20)의 과정을 그대로 따라해보았는데 발생했습니다. 반복된 함수도 없는 것으로 보아 코딩에 문제점도 여전히 찾지 못하고 있습니다. 답변자님 매번 감사합니다.
- 해결됨홍정모의 따라하며 배우는 C++
연습문제 간단한 질문입니다.
자료형 함수를 int가 아니라 double하면 if절 userInput 변수에 오류가 생기더라고요 구글링해보니 배열에서는 integer만 사용 가능하다는데 그 이유때문인가요?
- 미해결홍정모의 따라하며 배우는 C++
강의 문서는 공유 받을 수 없나요?
강의 끝나고 복습하는데 일일 영상 돌려보기가 힘들어서요.
- 미해결홍정모의 따라하며 배우는 C++
array를 함수의 파라미터로 넣어주는게 이해가 잘 안가요
교수님 array를 함수의 파라미터로 넣어주는 부분이 좀 어려운데 다시 한번 설명을 부탁드립니다 지난시간 6.2배열기초부분에서 설명해주셨는데 형식만봐서는 배열이지만 문법상 포인터다 설명해주셨는데 array를 함수의 파라미터로 왜 넣는거죠? 이유가 궁금합니다
- 해결됨홍정모의 따라하며 배우는 C++
결과 3:35 부분의미
안녕하세요 교수님 main함수안에 const int num_students = 5; 쓰고 시작하는데 이 뜻이 메모리 5개 빌릴거야 하는 뜻의 array 맞나요? 그리고 for문안에 들어가는 total_score += score[i] ; 의 의미가 헷갈리는데 설명해주시면 정말 도움이될것 같아요 감사합니다
- 미해결홍정모의 따라하며 배우는 C++
선생님이 연습문제 주신거 질문있습니다!
연습문제: 숫자를 입력 받는 함수를 만들고 그 함수 값을 계속 입력 받을 수 있게 만들어라. 이 문제를 여기까지 배운것들(조건문없음,반복문없음)로만 짤수있나요..? 계속 반복되는 건 반복 문에 넣고 쉽게 끝날텐데 만약에 선생님의 의도가 지금까지 배웠던 내용들로만 코딩하는 건지, 아니면 반복문을 써서 코딩하는건지가 궁금합니다!! 코드 첨부합니다(반복문없음)
- 미해결홍정모의 따라하며 배우는 C++
rand(), srand()질문
꼭 PRNG함수를 만드는 것이 아니더라도 rand()로 난수를 생성하기 위해서는, 다시말해 rand()를 사용하기 위해서는 반드시 srand()로 시드를 초기화하고 사용해야하나요? srand()와 rand()는 반드시 같이 다녀야하는 것인지 궁금합니다.
- 미해결홍정모의 따라하며 배우는 C++
1.7 예제 질문입니다.
1.7 예제입니다. 디버깅 결과 0,123,0이 순서대로 나오던데 어떠한 과정을 거쳐서 이러한 값이 나왔는지 궁금합니다. #include <iostream> using namespace std; void doSomething(int x) { x = 123; cout << x << endl; // #2 } int main() { int x = 0; cout << x << endl; //#1 doSomething(x); cout << x << endl; //#3 return 0; }
- 미해결홍정모의 따라하며 배우는 C++
코드 좀 따로 어딘가에 올려주시면 안되나요?
강의와 관련있는 질문을 남겨주세요.• 강의와 관련이 없는 질문은 지식공유자가 답변하지 않을 수 있습니다. (사적 상담, 컨설팅, 과제 풀이 등)• 질문을 남기기 전, 비슷한 내용을 질문한 수강생이 있는지 먼저 검색을 해주세요. (중복 질문을 자제해주세요.)• 서비스 운영 관련 질문은 인프런 우측 하단 ‘문의하기’를 이용해주세요. (영상 재생 문제, 사이트 버그, 강의 환불 등) 질문 전달에도 요령이 필요합니다.• 지식공유자가 질문을 좀 더 쉽게 확인할 수 있게 도와주세요.• 강의실 페이지(/lecture) 에서 '질문하기'를 이용해주시면 질문과 연관된 수업 영상 제목이 함께 등록됩니다.• 강의 대시보드에서 질문을 남길 경우, 관련 섹션 및 수업 제목을 기재해주세요. • 수업 특정 구간에 대한 질문은 꼭 영상 타임코드를 남겨주세요! 구체적인 질문일수록 명확한 답을 받을 수 있어요.• 질문 제목은 핵심 키워드를 포함해 간결하게 적어주세요.• 질문 내용은 자세하게 적어주시되, 지식공유자가 답변할 수 있도록 구체적으로 남겨주세요.• 정확한 질문 내용과 함께 코드를 적어주시거나, 캡쳐 이미지를 첨부하면 더욱 좋습니다. 기본적인 예의를 지켜주세요.• 정중한 의견 및 문의 제시, 감사 인사 등의 커뮤니케이션은 더 나은 강의를 위한 기틀이 됩니다. • 질문이 있을 때에는 강의를 만든 지식공유자에 대한 기본적인 예의를 꼭 지켜주세요. • 반말, 욕설, 과격한 표현 등 지식공유자를 불쾌하게 할 수 있는 내용은 스팸 처리 등 제재를 가할 수 있습니다. 동영상 막 왔다 갔다 하면서 보기 힘들어요 ㅠㅠ.
- 미해결홍정모의 따라하며 배우는 C++
string의 크기
#include <iostream> #include <string> using namespace std; struct Person { double height; float weight; int age; string name; void print() { cout << height << " " << weight << " " << age << " " << name; cout << endl; } }; int main() { cout << sizeof(string) << endl; cout << sizeof(Person) << endl; return 0; } 구조체의 사이즈를 sizeof를 이용해 출력하는 것을 보고 갑자기 string의 사이즈는 얼마인가 궁금해서 sizeof를 이용해 찍어보았는데 40byte가 찍혔습니다. string의 사이즈는 어떻게 결정이 되는지 알고 싶습니다. 어떻게 40바이트가 찍혔는지 아직 잘 모르겠습니다.
- 미해결홍정모의 따라하며 배우는 C++
6.10 2분50초쯤 질문입니다!
const char *name과 const char *name2 안의 값이 같을경우 주소가 같다고 하셔서 (uintptr_t)로 캐스팅해서 출력 해보면 같은데 &name과 &name2로 출력해보면 주소값이 왜 다르게 나오는지 모르겠습니다 ㅠ
- 미해결홍정모의 따라하며 배우는 C++
논리연산자 많이 작동원리가 boolean 으로 되는건가요?
논리연산자 만이 작동원리가 boolean 으로 되는건가요? 예를들어 if(x!=y) 이 relational operator 는 x 또는 y 가 0 인지 1 인지 로 결정안하지만 논리연산자 만이 if(x||y)이럴경우 x ,y 가 0 인지 1 인지를 통해 true 인지 false 인지를 아는건가요?
- 미해결홍정모의 따라하며 배우는 C++
3.6 논리연산자 10:00 질문입니다
#include <iostream> using namespace std; int main() { int x = 0; int y = 3; if ((!x) == y) { cout << " x does not equal y" << endl; } else cout << " x equals y" << endl; return 0; } 여기서 output 이 x equal y 로 출력되는 이유가 뭔가요? x는 0 이므로 false 지만 앞에 not operator ! 가 붙으므로 true 가되고 y의 값인 3 또한 0이 아니므로 true 가 되므로 x does not equal to y 가 출력되어야하는거 아닌가요?
- 미해결홍정모의 따라하며 배우는 C++
limits 라이브러리 질문입니다.
왜 std::numeric_limits는 ()이 아니라 <>안에 매개변수를 받는 것인가요?
- 미해결홍정모의 따라하며 배우는 C++
강사님 C++ 강의에 대해 궁금해서 여쭤봅니당.
제가 강사님의 C++ 강의만 사서 현재 학습하고 있는데요. C언어를 공부해야할까요? 강사님의 커리큘럼을 보면 C를 공부안해도 된다고 전 생각을 하는데.. 강사님은 어떻게 생각하시는지 궁금합니당..
- 해결됨홍정모의 따라하며 배우는 C++
강의 수강 후 추가적인 C++ 공부에 대하여 질문드립니다.
안녕하세요. 따배씨와 따새씨플플을 모두 수강한 학생입니다. 강의를 다 듣고, c++을 더 공부하고 싶다는 생각에 관련 원서를 찾아보게 되었습니다. C++ Primer - Stanley Lippman을 공부한 후, Effective Modern C++ - Scot meyers을 공부하려고 계획중입니다. 지금 C++ Primer을 공부하고 있는데, 책에 나와 있는 내용들이 대부분 강의에서 배운 것들이라 효율적이지 못한 공부를 하고 있는 것인가 하는 의문이 생겨질문드립니다. C++문법을 교수님의 강의를 들은 것으로 충분할지, C++문법을 더 보는 것보단, 모던 C++에 대한 내용이나, 기타 프로젝트를 진행하는 것이 더 도움이 될지 여쭙고 싶습니다.
- 미해결홍정모의 따라하며 배우는 C++
[2:06초] int getCents() 함수 사용시, add 함수에서 m_cents의 값을 변경할 수 없는 이유
안녕하세요, 비슷한 질문이 많이 올라온거같은데 제가 이해가 잘 안되서 더 구체적으로 여쭤봅니다.아래와 같이 코드를 작성하면 add 함수 내에서 c_out 에 "expression must be a modifiable lvalue"라는 에러가 발생합니다. [2:06초]즈음에 교수님께서는 int& getCents() {return m_cents;}로 코드를 작성하시면 앞의 에러가 발생하지 않죠. #include <iostream>using namespace std; class Cents{private: int m_cents;public: Cents(int cents) :m_cents(cents) {} int getCents() const { return m_cents; } int getCents() { return m_cents; }}; void add(const Cents &c1, const Cents &c2, Cents &c_out) { c_out.getCents() = c1.getCents() + c2.getCents(); //error 발생 } int main() { Cents cents1(6); Cents cents2(8); Cents cents3(0); add(cents1, cents2, cents3); return 0; } 둘의 차이는 return by copy(RBC) 와 return by reference(RBR)임을 알고 있습니다. 이 때, RBC는 에러가 발생하고 RBR은 에러가 발생하지 않는 이유에 대해 풀어서 설명해주실 수 있을까요? RBC로 호출하면 r-value로 호출되어서 값의 수정이 안되고, RBR로 호출하면 reference로 반환되어 l-value로 값의 수정이 되는걸까요? 바쁘시겠지만 설명해주시면 정말 감사하겠습니다.
- 미해결홍정모의 따라하며 배우는 C++
1바이트 메모리 활용에 대한 질문
bool타입은 0과1 2가지의 값만 갖는데 메모리 주소의 최소단위가 바이트이므로 1바이트를 가지게 되었고 총 8비트 중 6비트는 낭비되는 메모리로 알고 있습니다. 강의에서 같은 1바이트인 unsigned char타입으로 bit flag를 활용하는 것을 봤는데 같은 크기인 bool타입에서 낭비되는 6비트로는 bit flag를 활용하지는 않는지 궁금합니다.