모든 프로그래밍 언어로 프로그램을 작성할 때 입력을 받는 것은 거의 모든 프로그램에서 수행하는 기본 작업입니다. 때로는 콘솔에서 직접 입력을 받기도 하고 때로는 파일에서 입력을 받기도 합니다. 파일에서 입력을 얻으면 입력을 반복해서 입력할 필요가 없고 때로는 좋은 입력 테스트 사례를 파일에 저장할 수 있다는 이점이 있습니다. 그러나 이 기사에서는 콘솔 기반 입력에 중점을 둘 것입니다. 우리는 C++에서 사용자로부터 입력을 받는 다양한 기술을 배울 것입니다.
콘솔에서 입력을 얻는 방법에는 여러 가지가 있습니다. 그 중 일부는 C와 유사한 메서드이고 다른 일부는 C++에 존재하는 입력 스트림을 사용합니다. 우리는 그것들을 하나씩 다루고 더 나은 이해를 위해 몇 가지 예를 제공할 것입니다.
C 언어에서는 scanf() 함수를 사용하여 형식화된 문자열 형식으로 콘솔의 입력을 스캔합니다. 이 함수는 C++에서도 사용할 수 있으므로 형식화된 방식으로 입력을 받으려면 scanf() 메서드를 사용할 수 있습니다.
형식 문자열을 포함한 scanf() 메서드의 기본 구문.
으아악scanf() 형식 지정자.
형식 지정자 | Description | 의 중국어 번역은Description | 입니다.
---|---|---|
%c | 단일 문자 입력의 경우 | |
%s | 공백이 없는 문자열의 경우 | |
%안녕 | 짧은 부호 있는 정수 | |
%hu | 짧은 부호 없는 정수 | |
%Lf | 롱 더블 | |
%d | 10진법 정수(부호 있음), 밑이 10이라고 가정 | |
%i | 정수(자동 감지 기준) | |
%o | 8진수 | |
%x | 16진수 | |
%p | 포인터 | |
%f | 부동소수점 숫자 |
이 방법은 다른 데이터 유형에도 작동하지만 문자열의 경우 C와 유사한 문자열이나 문자 배열만 허용합니다. "cout"을 사용하여 문자열을 표시하려면 C++와 유사한 문자열 개체로 변환해야 합니다. 그렇지 않으면 printf() 함수를 사용하여 출력을 표시할 수 있습니다. 이것들은 기본적인 예입니다. 이제 다음 예에서 문자열 형식 지정의 효과를 살펴보겠습니다.
이 예에서는 (dd-mm-yyyy) 형식으로 입력을 받고 있으며 이 세 가지 정수 값에 대해 다른 형식은 허용되지 않습니다. 그리고 출력에서는 동일한 날짜를 다른 형식(dd/mm/yyyy)으로 표시합니다. 이것이 실제로 형식화된 문자열 입력의 목적입니다. 다음으로 "cin" 입력 스트림을 사용하여 모든 유형의 데이터를 지정된 변수에 직접 입력하는 더 간단한 형식을 살펴보겠습니다.
cin은 추출 연산자 >>를 사용하여 스트림에서 입력을 얻는 C++ 입력 스트림 클래스입니다. 이 연산자는 콘솔에서 입력을 받아 지정된 변수에 값을 자동으로 삽입합니다. 구문은 다음과 같습니다.
cin 메소드의 기본 구문
으아악다른 변수와 마찬가지로 문자열을 문자 배열로 사용하지 않고 직접 사용할 수 있습니다. 이 방법에서는 주어진 입력을 문자열 객체에 자동으로 할당합니다. 그러나 문자열에는 문제가 있습니다. 이 방법으로는 여러 단어로 구성된 문자열을 입력할 수 없습니다. 여러 단어로 구성된 문자열을 작성하면 첫 번째 단어만 사용됩니다. 아래 예에서 이를 살펴보겠습니다.
이 문제를 해결하려면 getline() 함수를 사용하여 공백으로 구분된 문자열을 가져와야 합니다. 이 방법에서는 개행 문자가 나타나면 텍스트 읽기를 종료합니다.
이 기사에서는 scanf() 메서드와 cin 스트림을 사용하여 사용자 입력을 읽는 다양한 사용법을 살펴보았습니다. 다른 변수 유형에 입력을 할당하는 것은 간단합니다. 그러나 %s 형식 지정자와 cin 클래스는 공백이 포함된 입력 문자열을 허용하지 않습니다. C 언어와 마찬가지로 C++에는 공백으로 구분된 단어가 포함된 문자열을 읽는 데 지정된 함수가 있습니다. getline() 메소드를 사용하여 이 입력 문자열을 승인할 수 있습니다. 파일 및 문자열 스트림에서 입력을 얻을 수도 있습니다.
위 내용은 사용자로부터 입력을 받는 C++ 프로그램의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!