c언어

c언어로 입력 받은 내용 출력하기

bok1231 2024. 9. 13. 19:29

입력 받은 내용을 출력하는 것은

예를 들어 '가나다'라고 적으면 '가나다'가 출력되는 것이다.

이 것을 코드로 적어보면

 

#define _CRT_SECURE_NO_WARNINGS

#include <stdio.h>

 

int main(void) {

    char text[256];

    scanf("%s", text);

    printf("%s", text);

    return 0;

}

이렇게 적으면 된다.

위와 같이 적으면 입력 받은 내용을 출력 할 수 있다.
#define _CRT_SECURE_NO_WARNINGS는 scanf함수를 사용 할 수 있게 해주는 코드이다.

그런데 #include <stdio.h>는 printf를 쓸 수 있게 해준다고 설명했었는데

(전 편 https://bok1231.tistory.com/1

에 나와있다.)

그럼 #define _CRT_SECURE_NO_WARNINGS는 scanf 함수 사용이고,

#include <stdio.h>는 printf를 쓸 수 있게 되는 것으로 생각할 수 있지만,

#include <stdio.h>는 printf와 scanf함수 모두를 사용할 수 있게 해준다.

그런데 printf는 #include <stdio.h>만 적어도 되지만, scanf는 '문자열 길이 관련 문제 발생 위험'

(무슨 말인지 몰라도 괜찮다.)으로 #define _CRT_SECURE_NO_WARNINGS를 추가로 적어야 한다.

 

- 위 내용 요약 -

#define _CRT_SECURE_NO_WARNINGS

#include <stdio.h>

는 입력 받고 출력 받고 하는 함수를 사용 할 수 있게 해준다.

 

char text[256];은

입력 받은 내용을 저장했다가, 출력 하기 때문에

text라는 변수를 만드는 코드이다. [256]은 배열인데,

쉽게 이해 하면 256자 까지 입력 받을 수 있는 것이다.

(256을 더 늘리면 더 긴 글자도 입력 받을 수 있다.)

 

scanf는 실행 창에 쓴 내용을 입력 받는 함수 이다.

scanf("%s", text);는 text라는 변수에 실행 창에 쓴 내용을

입력 하라는 것 이다.

 

printf("%s", text);는 text의 내용을 출력 하는 것이다.

 

%s는 문자열 데이터 라서 %s를 쓰는 것이다.

문자열 

 

위 괄호 안에 내용은 몰라도 괜찮다.

이제 실행 해서 이것저것 적고 엔터를 누르면,

입력한게 출력 되는 것을 볼 수 있다!

(띄어쓰기를 해서 입력하면 첫 부분만 입력된다.)

다음시간에는 'c언어에서 세미콜론(;)을 적는 이유'를

알아 볼 것이다.

 

다음 블로그

https://bok1231.tistory.com/3

'c언어' 카테고리의 다른 글

c언어의 주석과 전처리 과정 알아보기  (1) 2024.09.15
c언어에서 세미콜론(;)을 적는 이유  (0) 2024.09.14
c언어 시작하기  (9) 2024.09.14
c언어로 Hello World! 출력하기  (0) 2024.09.13