월 24,200원
5개월 할부 시다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 해결됨홍정모의 따라하며 배우는 C++
main()에서 Person을 이용하여 구조체타입 변수 생성시 메모리와 관련하여 궁금한 것
Person me; Person mom; Person dad; 질문1. main() 에서 이렇게 구조체타입 변수를 생성할 때에 각 변수마다 (me, mom, dad) 메모리에 공간이 각각 48 byte 만큼 할당되어 총 144 byte의 공간이 사용할 수 있도록 생성된 것 인가요? 질문2. 위처럼 main 에서 구조체타입 변수를 여러개 생성했을때 struct 구조체가 복사되어 사용할 수 있게 되는 방식인가요? 아니면 구조체 하나를 생성하고 그 구조체에 접근하여 사용할 수 있게 되는 방식인가요? 그림으로 그려보았을 때에 어떤 것이 가까운지 알려주세요. (1) 각 변수가 하나의 구조체에 접근하는 방식 (2) 각 변수마다 하나의 구조체를 갖게 되는 방식 (복사)
- 미해결홍정모의 따라하며 배우는 C++
numeric conversion과 numeric promotion 차이
선생님 고생많으십니다~ 강의 듣다가 혼동되는 것이 있어 질문 남깁니다. 7:24 구간에서 double d = 3; 을 초기화 해줄때 큰것을 작은것으로 보내거나 타입이 바뀌는 것을 numeric conversion 이라 하셨는데, 이것도 6:45 처럼 double에 float를 넣어주는 것처럼 double 에 integer 값을 넣어주는 것이기 때문에 numeric promotion 아닌가요? 혹시 integer는 정수이고 double float 는 부동소수점수 이기 때문에 numeric conversion이 되는 건가요? 답변 미리 감사드립니다.
- 미해결홍정모의 따라하며 배우는 C++
5:10초 경 벡터를 어레이라고 잘못 말씀하신건가요
듣고있는데 헷깔려서 질문남깁니다
- 해결됨홍정모의 따라하며 배우는 C++
std::cin.ignore(32767, '\n')과 numeric_limits 에서 이런 방법은 어떤가요?
<첫번째 질문> (1) std::cin.ignore(32767, '\n'); (2) std::cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n'); 1번은 매직넘버를 쓰기 때문에 좋지 못한 코드이고, 2번은 <limits> 를 #include 해야 하고, 길어서 타이핑이 불편합니다. \n을 만날때까지 최대 32767 개 의 글자를 무시해라 라는 의미라면 ignore의 첫번째 매개변수에는 어떤 자료형의 signed 최대값이 인자로 들어가는구나 생각할 수 있습니다. 그 첫번째 인자로 INT_MAX 나 CHAR_MAX 같은 것을 사용하는건 어떻게 생각하시나요? <두번째 질문> INT_MAX 에는 2147483647 / CHAR_MAX에는 127 값이 들어있습니다. 제 생각엔 INT는 너~~무 많고(낭비), CHAR은 좀... 적은것 같습니다. 좀 더 넓었으면 좋겠습니다. 그렇다면 매직넘버를 사용하는 대신, Short 자료형의 최대값인 32767을 short 변수를 만들어 저장한 뒤, ignore함수의 첫번째 인자로 넣어주는 것 입니다. 위의 두 가지 방법에 대해서는 어떻게 생각하시나요?
- 해결됨홍정모의 따라하며 배우는 C++
local 지역변수와 static 정적변수의 메모리에 대한 질문
(다른 cpp, h파일과 전역변수는 사용하지 않은 모습입니다) int a = 1 ; 이라는 a 변수는 코드블럭을 빠져나갈때 메모리를 가졌다가 사라졌다가 새로 호출되면 메모리를 가졌다가 사라졌다가 를 반복하여 호출시마다 a = 1 로 초기화가 계속 이루어진다는 말씀과, static int a = 1; 의 static a 변수는 하나의 메모리를 (정적으로) 재사용하여 값이 변화한한다 라는 말씀을 듣고 궁금해서 각 a 의 주소를 찍어보았습니다. 제 생각에는 int a 가 메모리를 해제했다가 다시 받는것을 반복한다면 주소가 계속 바뀌어야 할 것 같은데 얘도 주소가 바뀌지 않고, static a 도 주소가 바뀌지않아서 혼란이 왔습니다. static a 는 고정적인 메모리라 값은 바뀌지만 주소가 바뀌지 않는것이 맞는데, int a 는 호출시마다 왜 주소가 똑같은 건가요...?
- 미해결홍정모의 따라하며 배우는 C++
c++초보입문자의 입장에서 좀 더 명확히 알고 싶어서 질문드립니다.
cout, cin , endl같은 기능들이 정확히 <iostream>에 정의가 되있는 건가요 아니면 namespace std안에 정의가 되어있는 건가요? 아니면 std라는 namespace가 <iostream>에 정의가 되어있어서 교수님께서 cout, cin , endl이 모두 <iostream>와 std에 정의되어있다고 하신것인지 궁금합니다.
- 미해결홍정모의 따라하며 배우는 C++
이진수 끼리의 계산
선생님 30:00 에서 이진수 1111 1111에서 0000 0001 을 더하면 100000000 이 안되고 왜 0이 되는 지 설명해주실 수 있나요?
- 미해결홍정모의 따라하며 배우는 C++
21:50부분 질문
변수를 선언하고 초기화하지 않은 상태로 출력해보는 부분인데 Debug모드와 Release모드애서 모두 컴파일 하고 실행해보았는데 빌드할 때는 둘 다 강의에서와 같은 오류가 뜨지만 실행할 때 또한 두개 모두 'Unable to start program 지정된 파일을 찾을 수 없습니다.'라는 에러 창만 뜹니다. 강의에서 Release모드에서는 컴파일러가 자동으로 넣어준 0이 출력이 되었는데 Debug모드에서 실행했을 때와 같은 에러가 뜨고 이게 런타임에러인지도 모르겠습니다. 현재 Visual Studio 2019를 사용하고 있고 최근에 업데이트를 했는데 컴파일러 문제일까요?
- 미해결홍정모의 따라하며 배우는 C++
8강 3절 Constructors 20:00
이전 강의에서 public 혹은 private 의 표시가 없다면 private이 기본값이라고 수업을 들었습니다. 그렇다면 여기서 Second sec; 도 마찬가지로 private으로 작용해야 될 것 같은데 왜 main함수에서 First fir;선언할 때 오류가 나지 않는지 이해가 되지 않습니다.
- 해결됨홍정모의 따라하며 배우는 C++
홀/짝 프로그램 숙제에서 궁금점
위 코드를 실행하고 0.12 같은 소수를 입력했을때에 사용자가 int에 비정상 float 값을 입력하여 0.12에서 소수점 자리를 잘라내고 0으로 자동 인식되면서 자동 종료되는것은 알겠는데요, 3.14 같은 소수를 입력했을 때에는 3으로 인식되어 다시 프로그램이 작동해야 할 것 같은데 그냥 종료가 됩니다..ㅠ 무슨 문제가 있는걸까요..?ㅠㅠ
- 미해결홍정모의 따라하며 배우는 C++
유효숫자개수
교수님 고생많으십니다. 바쁘실텐데 질문 하나 여쭙겠습니다. 강의19:49구간에서 자료형이 float인 변수 f를 setprecision(9) 로 출력하였을 때 왜 오차가 나오는지 궁금합니다. 각 자료형마다 컴퓨터 내부적인 계산방법이 다르기 따문에 오차없이 표현할수있는 숫자가 다른건가요? 감사합니다
- 해결됨홍정모의 따라하며 배우는 C++
연습문제를 해보려 하는데요
(연습문제-1) 숫자 2개를 사용자로부터 입력받고 더하기를 출력하는 프로그램을 만든다. (연습문제-2) 사용자로부터 여러번 입력받고 여러번 출력하는 프로그램을 만든다. 이렇게 연습문제가 두 개가 있는건가요...? 연습문제1번은 while 써서 어찌저찌 만들었는데, 연습문제2번은 도통 어떻게 만들지 모르겠습니다ㅠ
- 미해결홍정모의 따라하며 배우는 C++
강의 1.3에 17분 08초 초기화 안하고 강제 실행 방법
초기화 하지 않은 수식을 강제로 실행시켜서 런타임 오류가 나는 것을 보여주시는 장면인데, 저는 cmd창이 뜨지않고 "There were build errors. Would you like to continue and run the last successful build?" 라는 선택창이 뜹니다. 디버그 모드, 릴리즈 모드에서 모두 마찬가지입니다. 교수님처럼 똑같이 런타임 에러가 뜨려면 어떻게 해야할까요?
- 해결됨홍정모의 따라하며 배우는 C++
네임스페이스를 리소스파일이랑 헤더파일로 못옮기나요?
네임스페이스를 리소스파일이랑 헤더파일로 못옮기나요? 메인만 딱 남겨두고 싶어서요
- 미해결홍정모의 따라하며 배우는 C++
C++과는 조금 별개의 질문인것 같지만 혹시나 질문드립니다!!
안녕하세요! 저는 전자공학과에 재학중인 대학생입니다. 현재 C언어의 기본기는 어느정도 되어 있다고 생각하는 편이고, 지금은 C++ 강의를 60%정도 들으며 객체지향 프로그래밍에 처음 입문을 하였습니다. 목표는 올해안에 MFC를 이용한 UI에 openCV를 이용하여 간단한 영상처리 프로그램을 만들어 보는 것입니다. C++ 강의 완강 후 어느정도 이해도가 생기면 UI를 개발하기 위한 기초적인 토대 쌓기에는 문제가 없을까요?? 아니면 더 공부해야 할 배경지식이 필요할 지, 일단 MFC에 대해 먼저 공부하는지 좋을지 방향을 잡는데 어려움이 많습니다. (MFC책을 처음 폈을 때 난무하는 C++문법에 사실 겁을 많이 먹었습니다..) 어떻게 프로그램을 작성해야 할지, 처음 배워보는 객체지향의 벽이 느껴져서 난이도에 감이 잡히지 않습니다.. 답변해주시면 너무너무 감사드리겠습니다!!
- 해결됨홍정모의 따라하며 배우는 C++
Fraction doSomething() 과 Fraction & doSomething 차이
안녕하세요? 교수님 디버깅 하는중에 doSomething() 함수 호출 과정에서 의문이 생겨서 질문 드립니다. 1. Fraction doSomething() 이 함수에서 호출 했을 때, copy constructor을 호출 하는 시점이 return temp 에서 발생했습니다. 2. Fraction & doSomething() 이 (& 반환)함수에서 copy constructor 호출이 Fraction result = doSomething()에서 반환 했습니다. 두 함수다 두 번째 사진 처럼 copy constructor가 발생 되어야 한다고 생각했습니다. 첫 번째 사진에서 return temp시점에서 copy constructor을 호출하는 이유가 이해되지 않아서 질문드립니다.
- 미해결홍정모의 따라하며 배우는 C++
[12:34] 질문 있습니다.
strcat_s를 연습하던 도중에 C6386 error 가 발생해서 질문드립니다. 구글링해도 무슨 말인지 이해가 안갑니다...ㅠ strcat_s에서 size를 11로 수정했을 때는 에러가 발생하지 않지만 값이 출력되지 않습니다... 또 Release일 때랑 Debug일 때랑 결과가 다른데 그 이유도 같이 궁금합니다. <code> #include <iostream> #include <cstring> using namespace std; int main() { char source[] = "Copy this!"; char dest[] = "do it again!"; strcat_s(source, 50, dest); cout << source << endl; cout << dest << endl; return 0; } 이 때 strcat_s line에 밑줄 쳐지면서 C6386 error 라고 뜹니다. <Debug일 때 결과> Copy this!do it again! do it again! C:\Users\wawoo\source\repos\Inflearn 강의용 6\Debug\Chapter6_6.exe (process 12792) exited with code -1073740791. Press any key to close this window . . . runtime error 뜨면서 값은 제대로 출력이 됩니다. <Release일 때의 결과> Copy this!do it again! it again! C:\Users\wawoo\source\repos\Inflearn 강의용 6\Release\Chapter6_6.exe (process 3516) exited with code 0. Press any key to close this window . . . 앞에 do 가 생략돼서 나옵니다... 감사합니다!
- 미해결홍정모의 따라하며 배우는 C++
[02:59] 질문 있습니다.
교수님께서 문자열 "string"으로 sizeof를 하셔서 7의 값이 나왔는데 그 전에 "string\0"을 했을 때는 sizeof(myString) / sizeof(myString[0])의 값이 8로 나옵니다... "string\0"으로 값을 입력하면 sizeof는 \0를 같이 포함시키고 "string"으로 하면 포함을 시키지 않는건가요...? null character가 적용되는 기준이 궁금합니다..! 그리고 int array와 char array를 출력할 때 그냥 cout << () << endl; 을 써서 출력하면 int array는 주소를 출력하고 char array는 입력한 배열을 출력하는 지 궁금합니다. 감사합니다.
- 미해결홍정모의 따라하며 배우는 C++
16:05 질문 있습니다.
현재 visual studio 최신판으로 공부를 하고 있습니다. 교수님이랑 똑같이 프로그래밍 했을 때 case1의 지역변수 y 가 초기화되지 않았다고 error 가 발생합니다. 혹시 이게 업데이트 되면서 바뀐건지 궁금합니다. case 0 내에서 지역변수 y가 선언되고 초기화했지만 case0을 거치지 않아서 그런 것 같은데 맞는 건지 질문 드립니다. 감사합니다!
- 미해결홍정모의 따라하며 배우는 C++
[10:30]
#include<iostream> #include<string> int main() { using namespace std; cout << "Your name? : "; string name; cin >> name; cout << "Your age? : "; string age; cin >> age; cout << name << " " << age << endl; return 0; } 1) jack jack을 입력받았을 때 왜 마지막줄의 cout<<name<<" "<< age<<endl; 부분은 실행(출력)이 되지 않나요?? 2) 입력으로 j1 j2 j3를 입력했을 때 한줄씩 디버깅하면 변수값이 age= j1, name=j2가 나옵니다. 실행파일에서는 age가 j1, j2로 나오는 이유를 모르겠습니다.