책 내용 질문하기
기출문제집 73페이지 질문입니다.
도서
2017 시나공 정보처리기사 실기(산업기사 포함) 특별개정판
페이지
73
조회수
101
작성일
2017-03-28
작성자
탈퇴*원
첨부파일

기출문제집 73~74 페이지에 보면

73페이지에 fscanf(inf, "%s %d", n, &p);

74페이지에 printf("%s %d" , n, p); 가 있는데

p에 &을 붙이는 건 어떤 경우에 붙이는건가요??

답변
2017-03-28 09:57:32

안녕하세요.

scanf나 fscanf와 같이 자료를 입력받을 때 키보드나 파일로 부터 자료를 입력받아 그 값을 메모리에 저장할 때 주소를 사용합니다.

또한 배열이나 포인터 변수의 경우 주소를 기반으로 데이터가 저장되는데, 정수형 변수의 경우 주소를 적용하기 위해 변수명 앞에 &를 함께 붙여줍니다.

그래서 배열의 대표명은 주소로 사용되므로 n에는 &를 안 붙이고 정수형 변수 p 앞에만 &p를 붙인 것입니다.

오늘도 즐거운 하루 되세요.

  • *
    2017-03-28 09:57:32

    안녕하세요.

    scanf나 fscanf와 같이 자료를 입력받을 때 키보드나 파일로 부터 자료를 입력받아 그 값을 메모리에 저장할 때 주소를 사용합니다.

    또한 배열이나 포인터 변수의 경우 주소를 기반으로 데이터가 저장되는데, 정수형 변수의 경우 주소를 적용하기 위해 변수명 앞에 &를 함께 붙여줍니다.

    그래서 배열의 대표명은 주소로 사용되므로 n에는 &를 안 붙이고 정수형 변수 p 앞에만 &p를 붙인 것입니다.

    오늘도 즐거운 하루 되세요.

· 5MB 이하의 zip, 문서, 이미지 파일만 가능합니다.
· 폭언, 욕설, 비방 등은 관리자에 의해 경고없이 삭제됩니다.