Computer >> 컴퓨터 >  >> 프로그램 작성 >> C 프로그래밍

C에서 scanf()와 gets()의 차이점

<시간/>

C 언어에서 scanf() 및 gets() 함수는 모두 외부 소스에서 입력을 받고 입력으로 시스템에 전달하도록 정의됩니다. 이제 두 기능 사이에 몇 가지 특성 차이가 있습니다.

다음은 C에서 scanf()와 gets()의 중요한 차이점입니다 -

Sr. 아니요. scanf() 함수 get() 함수
1 정의 scanf() 함수는 키보드에서 입력을 읽고 주어진 형식 지정자에 따라 저장할 수 있습니다. 공백, 개행 또는 EOF를 만날 때까지 입력을 읽습니다. 반면에 get() 함수는 줄 바꿈 또는 EOF를 만날 때까지 키보드에서 입력을 받는 데 사용됩니다. 공백은 입력의 일부로 간주됩니다.
2 공백 scanf() 함수에서 공백은 입력 문자로 간주되지 않으며 사이에 공백이 있으면 외부 소스에서 입력 읽기를 중지합니다. 반면에 get() 함수에서 공백은 입력 문자로 간주되며, 그 사이에 공백이 있으면 입력 소스에서 계속 읽는 경우 외부 소스에서 읽기를 중지합니다.
3 구문 scanf() 함수는 형식 문자열과 변수 주소 목록을 사용합니다. 예를 들어 scanf("%d", &숫자); 반면에 get() 함수는 수신된 값을 저장할 변수의 이름을 취합니다. 예를 들어 가져오기(이름);
4 데이터 유형 scanf() 함수는 다른 데이터 유형의 여러 값을 읽을 수 있습니다. 그러나 get() 함수는 문자열 데이터만 가져옵니다.