초보자를 위한 C언어 강의! #5 사용자의 값을 입력 받기 ('scanf')//C language #5 learning scanf

in #kr7 years ago (edited)

Vote 해주세요! 감사합니다!^^~

안녕하세요 nothink 입니다!

오늘은 사용자의 값을 받을수 있는 scanf 문을 배울 것입니다.



실행환경 : Windows 10 64비트

이번에는 소스 부터 봐용~





#include <stdio.h>

      int main() {
      int user;
      scanf("%d", &user);
      printf("%d", user);

return 0;
}




출력 결과는 사용자가 입력한 값이 됩니다.
사진↓↓↓
e1.png

e2.png

e3.png

e4.png





먼저 소스를 한국어로 해석 하자면 user 라는 정수만 담을수 있는 박스를 만들고 그박스에 사용자가 입력 한 수가 들어가게 하고 그 상자 안에 있는 값을 출력 하라는 것입니다.






이제 명령어 설명을 하겠습니다.



이번에 새로 나온 명령어는 scanf 입니다.



영어를 좀 하시는 분께서는 scanf 가 스캔을 하는것 같다는 생각이 드실겁니다.




(" %d" ) 가 printf 에서는 뒤에 나오는 수를 출력 하는 거였지만. 이번에는 뒤에 나오는 수에 저장을 한다는 뜻입니다.

scanf("%d", &a);

는 입력 받은 값을 a에 저장을 한다는 뜻입니다.
&는 주소 값을 나타내는데 말그대로 그 변수의 주소 값입니다. 메모리 중에서 어느 위치에 있는지 말하는 것입니다. 나중에 또 배우게 되니 그떄 설명을 더 자세히 하도록 하겠습니다.






&a 를 않하고 그냥 a 를 쓰면 아래 사진 처럼 되니 주의 하시고 프로그램 닫기를 클릭 하셔야 합니다.
e5.png
↑& 를 안넣은 사진

e6.png










이상 nothink 였습니당~

Vote 부탁드립니다~
감사합니당!!

Please Vote
Thank you~!

Sort:  

뉴비는 언제나 응원!이에요.
팁! : 기본 업보팅은 자신의 스팀파워중 2%를 사용합니다. 스팀파워는 하루에 20%충전되구요.
10.42% 보팅
현재 보상량 : [ 평균 - 1.63 / 6개 / 합계 : 9.77 ]

  • kr-newbie 보안관 봇! (beta 0.5.0 - 2017/07/17)

왜 & 를 안쓰면 오류가 발생하는지요? ^^

뒤에 오는 주소 값에 저장을 하라는 건데 a 라는 주소 값도 없고 a 는 주소를 나타내는 것이 아니기 때문입니당^^~
Vote 감사합니다

주소값을 쓰는 이유에 대해서 물어본 것입니다...

그 주소에다가 저장을 해야합니다. 아니면 변수의 값을 저장을 할수 가 없어요. 변수 a 에다가 저장을 해야 하는데 a 의 위치를 모르니 저장을 할수가 없겠저? ㅎ