10분40초 예제에서 super을 제거했을 시 자식 생성자의 ECar는 호출시에 기본 생성자가 호출 되지 않나요 ? 제가 강의를 들으며 이해하기론 출력값이 Car() // 부모 기본 생성자 ECar() // 자식 기본 생성자 ECar(75) 라고 나와야 한다고 생각했는데 어떤 경우에서는 부모 기본 생성자만 호출되고 어떤 경우에서는 자식 기본 생성자까지 호출되는지 헷갈립니다. 예로 7분에 나오는 예제는 호출시 Car constructor(부모 기본 생성자)가 먼저 호출이 되고 ElectricCar constructor(자식 기본 생성자)가 호출이 된 반면에 위의 예제에서는 왜 부모 기본 생성자만 호출되는 이유가 궁금합니다.
혼자 문제를 풀어보았는데 1번에 idx2 는 쉽게 풀었는데 2번에 답을 sizeof(a)는 20이 나올거고 sizeof(a[0])은 4가 나온다고 생각하고 sizeof(a)/sizeof(a[0]) 이라는 약간 무식한 하드코딩 결과를 혼자 내놓았는데.. 이런식으로 풀면 정답 처리가 될까요?
char *a[2]= {"Hello","World"}; printf("%s\n",*a);=> 출력값: Hello char*b[2][2]={{"hello","world"},{"app","dev"}}; printf("%s\n", *b); => 오류 일차원 일때는 출력할 때 정확한 값의 위치를 지정하지 않고 *a를 해도 출력이 되는데 이차원일 때는 안되는 이유가 무엇인가요?
주말코딩님, 안녕하세요! 항상 잘 듣고 있습니다. 다름이 아니고, 6:34 부분에서 j=j-1이 int j=0에서 -1을 해서 다시 j에 -1을 집어넣으라는 거로 이해했습니다. 그래서 j=-1이 되고 밑에 arr[-1+1]= key가 돼서 arr[0]에 key에 담아뒀던 31이 들어가는 것으로 이해했습니다. 근데 만약에 j가 포인터변수고 배열을 가리키고 있다면 j=j-1을 했을 때 배열을 가리키는 포인터 위치를 하나 앞으로 땡기라는건가요? 정확한 예시를 들기 어렵지만.. 뭔가 어떨 때는 포인터의 위치를 하나 앞으로 땡기는 거고 어떨 때는 실제로 값에 -1을 하라는 거던데 혹시 구별법이 있을까요? ㅠㅠ 답변주시면 감사하겠습니다.
static 메서드를 실행할 때는 클래스명.메서드명()으로 실행 가능하다고 하셨는데 이 코드에서는 클래스명 없이 바로 say()로 실행되고 있는데 이 부분은 문제가 없는 건가요? 그럼 만약 msg가 static 변수라면 say()를 실행했을 때 오류가 발생하지 않고 정상적으로 작동되나요?
예제에서는 equals 함수를 새로 만들어서 person1과 person2를 비교하는 상황이라 true가 나오는 것으로 이해했습니다. 그럼 equals 함수를 따로 만들지 않은 상태에서 person1과 person2를 equals로 비교하면 그 경우에는 true가 나오나요 false가 나오나요?
for문에서 i가 14가 되는 순간 널문자를 만나서 for문을 빠져나오게 되는데 메인함수에서 i를 따로 초기화한 값이 없기 때문에 i에 14가 유지되어서 myCar.mode[i] = '\0'; 이 식에 14가 들어가게 되는건가요? for문을 빠져나오는 순간 i는 따로 초기화가 되는 것이 아닌가요?
안녕하세요 함수와 재귀함수 (v2) 내용 중에 23:33 대신 주소값은 배열의 첫번째를 가리킬 것이다 라는 것만 알고 계시면 되겠습니다 여기서 배열의 첫번째 줄을 가르킨다고 말씀 하셨는데여 그러면 배열의 첫번째면 t 를 가르키게 되는데 여기서 출력할 때 %s(문자열)을 출력 하라고 해서 출력 값이 this is string2 인가요? 그러면 만약 %c를 출력 하라고 하였을 때 문자열 첫번째인 t 를 출력하면 되는건가요?