scanf로 문자열 입력받을경우
튼싹
2023.04.01
질문 제목 : scanf로 문자열 입력받을경우 scanf로 문자열 입력받을경우의 주소연산자 &와의관계질문 내용 : scanf로 char 문자열 입력받았을경우에 주소연산자 &를썼을경우와쓰지 않았을경우 같은 결과가 나오는 데요.
int의 경우는주소연산자를 쓰지 않으면 올바른값을 입력받지 못하잖아요.왜 그러는지 이유를 아시는분설명좀 해주세요.
-
큰맘
윗 분 말씀대로 .. char 문자열이 꼭 배열은 아닙니다. 그렇지만 질문자 분께선 배열=char..이라고 생각하시는 것 같습니다. 질문자 분께서 생각하신 \scanf~ char 문자열~ & 여부에 차이 없다~\ ..는, 그게 일반이 아니라 특이한 경우인 겁니다. 배열이기 때문이죠. ( ')
-
가온누리
제가 질문을 제대로 이해한지 모르겠지만 제가이해한바로는 배열을 사용하셔서 그렇습니다.
만약
char a[50]; 이렇게 선언하셨을때 여기서 a는 배열a의 시작주소값을 가르킵니다.
따라서
scanf(\%s\