-
카테고리
-
세부 분야
알고리즘 · 자료구조
-
해결 여부
미해결
gets()의 매개변수에 대한 질문
19.08.07 21:49 작성 조회수 149
0
안녕하세요. 소스코드에서 line 7에 gets(a)가 있는데요. gets(&a)는 틀린걸까요?
답변을 작성해보세요.
0
김태원
지식공유자2019.08.08
gets 함수는 매개변수에 배열의 시작주소를 넘깁니다. 원칙적으로는 gets(&a[0]) 이렇게 해야 하는데 배열의 이름이 전체 배열의 시작주소이므로 &a[0]과 a는 같은 주소입니다. 그래서 gets(a)로 생략해서 표현합니다.
&a도 배열의 시작주소를 나타내지만 컴파일러에 따라 에러를 내는 것 같습니다.
배열의 시작주소는 이름만 사용하기를 권장합니다.
주소연산자(&)는 기본형 변수일 때(int a, float a, char a 등등) &a와 같이 변수앞에 주소연산자를 붙여 사용하면 좋을 것 같습니다.
답변 1