C언어는 사용자로부터 데이터를 입력받고 출력하는 기능을 제공합니다. 이 중에서도 "scanf" 함수는 사용자로부터 키보드를 통해 데이터를 입력받는 데 주로 활용됩니다. 오늘은 "C언어 scanf 입력 함수 사용 방법"에 대해 포스팅을 해보겠습니다.
목차
1. scanf 함수란?
키보드로부터 데이터를 입력받는 데 사용되는 함수입니다. 서식 지정자를 사용하여 입력을 받아들입니다. 여러 종류의 데이터를 키보드에서 읽어와서 지정된 변수에 저장합니다.
2. scanf 함수의 기본 구조
"scanf" 함수의 기본 구조는 다음과 같습니다.
scanf("%d", &number);
scanf : 함수명
"%d" : 정수를 입력받을 때 사용되는 형식 지정자
&number : 입력받은 데이터를 number 변수에 저장한다.
3. scanf 함수 형식 지정자
"scanf" 함수는 입력받을 데이터의 유형을 지정하기 위해 형식 지정자를 사용합니다. 몇 가지 주요 형식 지정자는 다음과 같습니다.
"%d" : 정수 출력
"%f" : 부동 소수점 수
"%c" : 문자
"%s" : 문자열
적절한 형식 지정자를 사용하는 것이 중요합니다. 잘못된 형식 지정자를 사용하면 예기치 않은 결과가 발생할 수 있습니다.
1. 입력 구분과 버퍼
"scanf" 함수는 공백 문자(스페이스, 탭 등)을 기준으로 입력을 구분합니다. 여러 데이터를 입력 받을 때 각각을 공백으로 구분하여 입력합니다.
int num1, num2;
scanf("%d %d", &num1, &num2); // 두 정수를 공백으로 구분하여 입력
2. 버퍼 오버플로우 방지
입력 버퍼 오버플로우를 방지하기 위해 'fgets' 함수 등을 사용하여 안전한 입력 처리 방법도 고려해야 합니다.
visual studio 에서 scanf 를 사용을 할 경우 보안 경고로 인해 컴파일 에러가 발생합니다.
그래서 맨 위에
#define _CRT_SECURE_NO_WARNINGS 를 적어 주셔야 합니다.
4. scanf 함수 예제 코드
"scanf" 함수의 다양한 형식 지정자를 사용한 예제 코드입니다.
#include <stdio.h>
int main() {
int integer;
float floatingPoint;
char character;
char string[50];
// 다양한 데이터 유형 입력받기
scanf("%d", &integer);
scanf("%f", &floatingPoint);
scanf(" %c", &character); // 공백 문자를 사용하여 이전 입력의 개행 문자를 소비
scanf("%s", string);
// 입력받은 값 출력
printf("정수: %d\n", integer);
printf("실수: %f\n", floatingPoint);
printf("문자: %c\n", character);
printf("문자열: %s\n", string);
return 0;
}
관련 포스팅
오늘은 C 언어의 "scanf" 함수를 사용하여 다양한 데이터 유형을 입력받는 방법과 주의사항을 알아보았습니다. 항상 올바른 형식 지정자를 사용하고, 입력 시 공백과 버퍼에 주의하시길 바랍니다. 여러분들에게 도움이 되는 "부상남"이 되겠습니다.