1. 84쪽에 (*ansan).jikwi , (*ansan).pay 이렇게 사용되는 예를 보여주고 있는데
ansan은 포인터 변수가 아닌데 왜 저렇게 사용하는 지 이해가 안 가요
2. 85쪽에 scanf("%d", &data.pay); 라고 하는 코드가 있는데
왜 &를 앞에 적은 건지 안 적은거랑 무슨 차이인지 알려주세요
안녕하세요 길벗수험서 운영팀입니다.
[1]
구조체를 포인터 변수로 선언할 때 구조체를 가리키는 방법을 설명한 것입니다.
구조체 포인터 변수를 선언하려면 일반 변수와 같은 방식으로 선언하면 되며, 선언된 구조체 포인터 변수는 해당 방법대로 표기하여 사용할 수 있습니다.
(예 : struct sawon *data;)
[2]
scanf 함수의 이용법을 다시 한 번 숙지하시기 바랍니다.
scanf의 경우 값을 입력받을 때, 입력받은 값을 저장할 위치를 '주소값'으로 받아야 합니다.
때문에 일반 변수앞에는 &를 사용해주어야 합니다.
반면 변수명 자체가 주소값을 가리키는 변수들이 존재합니다.
배열과 포인터 변수가 여기에 해당하죠.
이와 같은 변수들은 변수 이름 자체가 주소값을 의미하기 때문에 &를 생략하여야 합니다.
행복한 하루되세요 :)
-
관리자2019-03-26 11:17:26
안녕하세요 길벗수험서 운영팀입니다.
[1]
구조체를 포인터 변수로 선언할 때 구조체를 가리키는 방법을 설명한 것입니다.
구조체 포인터 변수를 선언하려면 일반 변수와 같은 방식으로 선언하면 되며, 선언된 구조체 포인터 변수는 해당 방법대로 표기하여 사용할 수 있습니다.
(예 : struct sawon *data;)
[2]
scanf 함수의 이용법을 다시 한 번 숙지하시기 바랍니다.
scanf의 경우 값을 입력받을 때, 입력받은 값을 저장할 위치를 '주소값'으로 받아야 합니다.
때문에 일반 변수앞에는 &를 사용해주어야 합니다.
반면 변수명 자체가 주소값을 가리키는 변수들이 존재합니다.
배열과 포인터 변수가 여기에 해당하죠.
이와 같은 변수들은 변수 이름 자체가 주소값을 의미하기 때문에 &를 생략하여야 합니다.
행복한 하루되세요 :)