25번 문제에서
char string[10]; 으로 문자형 배열이 선언 되어 있는데
p257 이론 부분을 보면 배열에 문자열을 저장할 때는 배열 선언 시 초기값으로 지정해야 한다고 적혀있는데
25번 문제에는 초기값이 지정이 안 되어있으니 답 아닌가요?
보기3번이 왜 답인지는 알겠는데
보기 2번이 좀 헷갈려요
안녕하세요 길벗수험서 운영팀입니다.
scanf는 조금 예외적으로 알아두셔야 합니다. 화면에 입력된 문자열을 처리하기 위해 기존의 선언된 공간 내에서 새롭게 포인터 타입으로 문자열을 처리합니다.
포인터를 이용해 문자 배열에 문자열을 저장하게 되면, 이 위치(포인터)부터 문자열을 차례대로 저장하라 가 되는 것이죠.
(기존의 선언된 배열은 전체 크기만이 고려되며 기존에 저장된 각 위치의 값은 덮어 씌어집니다.)
다만 257쪽에서 말했듯 C언어에서는 string = "abc"; 와 같은 사용은 여전히 불가능하다는 점 염두에 두시기 바랍니다.
행복한 하루되세요 :)
-
관리자2022-03-21 10:01:47
안녕하세요 길벗수험서 운영팀입니다.
scanf는 조금 예외적으로 알아두셔야 합니다. 화면에 입력된 문자열을 처리하기 위해 기존의 선언된 공간 내에서 새롭게 포인터 타입으로 문자열을 처리합니다.
포인터를 이용해 문자 배열에 문자열을 저장하게 되면, 이 위치(포인터)부터 문자열을 차례대로 저장하라 가 되는 것이죠.
(기존의 선언된 배열은 전체 크기만이 고려되며 기존에 저장된 각 위치의 값은 덮어 씌어집니다.)
다만 257쪽에서 말했듯 C언어에서는 string = "abc"; 와 같은 사용은 여전히 불가능하다는 점 염두에 두시기 바랍니다.
행복한 하루되세요 :)