주말코딩님, 안녕하세요! 항상 잘 듣고 있습니다. 다름이 아니고, 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 를 출력하면 되는건가요?
maxVal 함수에서 int *arr이 배열을 가져옴으로써 arr은 1의 주소를 갖게되는데 int max = maxVal(arr, size-1); 에서 int max = maxVal(1의주소, 4);가 되면 그다음 maxVal( ,3); 여기에서 앞 부분에 뭐가 들어가게 되는 건가요? 그리고 어떻게 배열이 계속 들어가게 되나요?