c언어 scanf 예제

scanf()는 “stdio.h” 헤더 파일에서 미리 정의된 함수입니다. 키워드에서 입력 값을 읽는 데 사용할 수 있습니다. 2 개의 숫자를 추가하는 C 언어로 입력 및 출력의 간단한 예를 보자. scanf에 사용되는 변수 앞에 놓아야 합니다. 당신이 포인터에 대해 알게되면 이유가 명확해질 것입니다. 그것은 잊고 쉽게 & 기호, 그리고 당신이 그것을 잊을 때 프로그램은 거의 항상 충돌 할 때 당신이 그것을 실행할 때. 이 코드 조각에서 우리는 우리가 c에서 scanf()를 통해 서식이 지정된 값을 읽을 수있는 방법을 알아 보려면,이 예제는 scanf()를 사용하여 HH : MM : SS 형식의 서식이 지정된 시간을 읽는 방법을 보여줍니다. fscanf는 입력 스트림에서 읽는 대신 FILE 포인터(ptr)가 가리키는 파일에서 읽습니다. 다음 예제에서는 scanf() 함수의 사용을 보여 주십니다. 설명: scanf의 %*s는 필요에 따라 일부 입력을 무시하는 데 사용됩니다.

이 경우 다음 공백이나 새 줄까지 입력을 무시합니다. 마찬가지로 %*d를 작성하면 다음 공백이나 새 줄까지 정수가 무시됩니다. printf() 및 scanf() 함수는 C 언어의 입력 및 출력에 사용됩니다. 두 함수 모두 stdio.h(헤더 파일)에 정의된 붙들린 라이브러리 함수입니다. 우리가 필요로하는 입력의 일부만 읽는 방법은 무엇입니까? 예를 들어 정수 또는 float 뒤에 문자만 포함하는 일부 입력 스트림을 고려해 보십시오. 그리고 우리는 정수 또는 부동만 스캔해야합니다. 즉 , 입력 : “이것은 값 100”, 출력 : 값 읽기는 일반적으로 100이며, 여기에 표시된 대로 scanf를 사용하는 것이 가장 좋습니다 – 키보드에서 단일 값을 읽는 것이 가장 좋습니다. 여러 호출을 사용하여 스캔하여 여러 값을 읽습니다. 실제 프로그램에서는 한 번에 한 줄의 텍스트를 읽는 대신 gets 함수를 사용합니다.

그런 다음 해당 값을 읽을 줄을 “구문 분석”합니다. 그렇게하는 이유는 입력의 오류를 감지하고 적합하다고 판단되는 대로 처리 할 수 있기 때문입니다. 위의 예제에서 scanf()는 두 개의 입력 값(int 및 float 값 모두)을 읽을 수 있으며 각각 a 및 b 변수에 저장됩니다. 마지막 예제에서 연산자 주소 (&)는 인수에 사용 되지 않습니다. 식과 단어는 수치적으로 동일한 값으로 평가되지만 의미상 요소가 아닌 전체 배열의 주소를 의미한다는 점에서 완전히 다른 의미를 가집니다. 이 사실은 문자열에 scanf 출력을 할당할 때 염두에 두어야 합니다. scanf 기능을 사용하면 표준에서 입력을 받아 들일 수 있으며, 이는 일반적으로 키보드입니다. scanf 함수는 많은 다른 작업을 수행할 수 있지만 사람의 오류를 잘 처리하지 않으므로 신뢰할 수 없습니다. 그러나 간단한 프로그램의 경우 충분히 좋고 사용하기 쉽습니다. 우리 중 많은 사람들이 스캔의 전통적인 사용을 알고 있습니다.

글쎄, 여기에 덜 알려진 사실 중 일부 “scanf”라는 용어는 이러한 유형의 함수를 대중화 한 C 언어 때문이지만 이러한 함수는 C보다 앞서 있으며 ALGOL 68의 “readf”와 같은 다른 이름이 사용됩니다. 형식입력(구문 분석)을 제공하는 scanf 형식 문자열은 형식이 지정된 출력(템플릿)을 제공하는 printf 형식 문자열에 상보적입니다. 두 경우 모두 보다 정교하고 유연한 구문 분석기 또는 템플릿 엔진에 비해 간단한 기능과 고정 형식을 제공하지만 여러 가지 용도로 충분합니다.