산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Industrial programming >> C 언어

C++ Char 데이터 유형(예제 포함)

Char가 무엇인가요?

Char는 문자 저장을 위해 설계된 C++ 데이터 유형입니다. Char는 문자의 약자입니다. 정수 데이터 유형으로 값이 정수로 저장됩니다. char은 1바이트의 메모리 크기를 사용합니다. 또한 단일 문자를 저장합니다.

이 C++ 자습서에서는 다음을 배우게 됩니다.

ASCII란 무엇입니까?

char 값은 ASCII 문자로 해석됩니다. 이는 부울 값이 참 또는 거짓으로 해석되는 방식과 유사합니다. ASCII는 American Standard Code for Information Interchange의 약자입니다. 영문자를 숫자로 표현하는 구체적인 방법을 정의합니다.

숫자 범위는 0에서 127 사이입니다. 예를 들어 문자 'a'는 ASCII 코드 97과 같습니다.

Char 선언

C++에서 char 변수를 선언하기 위해 char 키워드를 사용합니다. 그 뒤에 변수 이름이 와야 합니다. 변수는 선언 시 초기화될 수 있습니다. 변수 값은 작은따옴표로 묶어야 합니다.

구문:

다음은 C++의 char 선언 구문입니다.

char variable-name;

변수 이름은 변수에 할당할 이름입니다.

선언 시 값을 할당해야 하는 경우 다음 구문을 사용할 수 있습니다.

char variable-name = 'value';	

예시 1:

#include <iostream>
using namespace std;
int main() {
	char grade = 'B';
	cout << "I scored a: "<<grade;
	return 0;
}

출력:

다음은 코드의 스크린샷입니다.

코드 설명:

  1. 해당 기능을 사용하기 위해 코드에 iostream 헤더 파일을 포함합니다.
  2. 클래스를 호출하지 않고 사용하기 위해 코드에 std 네임스페이스를 포함합니다.
  3. main() 함수를 호출합니다. 이 함수의 본문에 프로그램 논리를 추가해야 합니다.
  4. grade라는 문자 변수를 선언합니다. 변수에는 B 값도 할당되었습니다. 변수 값은 작은따옴표로 묶여 있습니다.
  5. 콘솔의 다른 텍스트와 함께 변수 등급의 값을 인쇄합니다.
  6. 프로그램은 성공적으로 완료되면 값을 반환해야 합니다.
  7. main() 함수 본문의 끝입니다.

ASCII 값 인쇄

위에서 언급했듯이 각 문자는 ASCII 문자로 해석됩니다. 모든 문자의 ASCII 값을 얻을 수 있습니다. 문자를 int() 함수에 전달하기만 하면 됩니다. 이 프로세스를 유형 캐스팅이라고 합니다. 이를 시연해 보겠습니다.

예시 2:

#include <iostream>
using namespace std;
int main() {
	char ch;
	cout << "Enter any character: ";
	cin >> ch;
	cout << "The ASCII Value of " << ch << " is " << int(ch);
	return 0;
}

출력:

다음은 코드의 스크린샷입니다.

코드 설명:

  1. 해당 기능을 사용하기 위해 iostream 헤더 파일을 코드에 포함합니다.
  2. 클래스를 호출하지 않고 사용하기 위해 std 네임스페이스를 코드에 포함합니다.
  3. main() 함수를 호출합니다. 이 함수의 본문에 프로그램 논리를 추가해야 합니다.
  4. ch라는 char 변수를 선언합니다.
  5. 콘솔에 일부 텍스트를 인쇄합니다. 텍스트는 사용자에게 변수 ch에 대한 값을 입력하도록 요청합니다.
  6. 키보드에서 사용자 입력을 읽고 변수 ch에 저장합니다.
  7. 콘솔에 일부 텍스트를 인쇄합니다. 텍스트에는 변수 ch에 입력한 문자, 이 문자의 ASCII 값 및 기타 텍스트가 포함됩니다.
  8. 프로그램은 성공적으로 완료되면 값을 반환해야 합니다.
  9. main() 함수 본문의 끝입니다.

문자 값 인쇄

ASCII 값이 주어지면 C++ 컴파일러는 해당 문자를 반환할 수 있습니다. char 변수를 선언하고 정수 값을 할당합니다. 해당 문자 값으로 변환됩니다.

예시 3:

#include <iostream>
using namespace std;
int main() {
	char x = 64, y = 66, z = 71;
	cout << x;
	cout << y;
	cout << z;
	return 0;
}

출력:

다음은 코드의 스크린샷입니다.

코드 설명:

  1. iostream 헤더 파일을 코드에 포함합니다. 그런 다음 오류 없이 해당 기능을 사용할 것입니다.
  2. std 네임스페이스를 코드에 포함합니다. 호출하지 않고 해당 클래스를 사용합니다.
  3. main() 함수를 호출합니다. 프로그램 로직은 이 함수의 본문으로 들어가야 합니다.
  4. 3개의 char 변수 x, y, z를 선언합니다. 3개에는 65, 66 및 67의 정수 값이 할당되었습니다. 이들은 문자에 대한 ASCII 값으로 처리됩니다.
  5. 콘솔에 변수 x의 값을 출력합니다. x가 char로 선언되었기 때문에 ASCII 값이 65인 char, 즉 A가 반환됩니다.
  6. 콘솔에 변수 y의 값을 출력합니다. y는 char로 선언되었으므로 ASCII 값이 66인 char, 즉 B가 반환됩니다.
  7. 콘솔에 변수 z의 값을 출력합니다. z가 char로 선언되었기 때문에 ASCII 값이 67인 char, 즉 C가 반환됩니다.
  8. 프로그램은 성공적으로 완료되면 값을 반환해야 합니다.
  9. main() 함수 본문의 끝입니다.

문자 입력

std::cin 함수를 사용하여 키보드를 통해 사용자가 입력한 문자를 읽을 수 있습니다. std::cin을 사용하면 많은 문자를 입력할 수 있습니다. 그러나 문자 변수는 하나의 문자만 보유할 수 있습니다. 이것은 입력된 첫 번째 문자만 추출되어 문자 변수에 저장됨을 의미합니다. 나머지는 std::cin이 사용하는 버퍼에 남습니다. 그것을 추출하려면 std::cin에 대한 후속 호출을 수행하십시오.

예시 4:

#include <iostream>
using namespace std;
int main() {
	cout << "Type a sequence of characters: "; 
	char ch;
	cin >> ch; 
	cout <<"The ASCII code of "<< ch << " is "<< int(ch) << '\n';
	cin >> ch; 
	cout <<"The ASCII code of " << ch << " is "<< int(ch) << '\n';
	return 0;
}

출력:

다음은 코드의 스크린샷입니다.

코드 설명:

  1. 해당 기능을 사용하기 위해 코드에 iostream 헤더 파일을 포함합니다.
  2. 코드에 std 네임스페이스를 포함하여 호출하지 않고 해당 클래스를 사용합니다.
  3. main() 함수를 호출합니다. 이 함수의 본문에 프로그램 논리를 추가해야 합니다.
  4. 콘솔에 일부 텍스트를 인쇄합니다.
  5. ch라는 문자 변수를 선언합니다.
  6. 키보드에서 사용자 입력을 읽습니다. 입력은 변수 ch에 저장됩니다. 사용자는 abc와 같은 문자 시퀀스를 입력하므로 첫 번째 문자인 a만 변수 ch에 저장됩니다.
  7. 입력한 첫 번째 문자, ASCII 코드 및 기타 텍스트를 콘솔에 인쇄합니다. ASCII 코드는 문자 변수를 int() 함수에 전달하여 결정됩니다.
  8. 사용자가 입력한 다음 문자를 읽습니다. 사용자는 새 문자를 입력할 필요가 없습니다. 대신 입력된 두 번째 문자, 즉 b를 읽습니다.
  9. 입력한 두 번째 문자, ASCII 코드 및 기타 텍스트를 콘솔에 인쇄합니다. ASCII 코드는 문자 변수를 int() 함수에 전달하여 결정됩니다.
  10. 프로그램은 성공적으로 완료되면 값을 반환해야 합니다.
  11. main() 함수 본문의 끝입니다.

문자열을 문자열로 변환

문자를 문자열로 변환하는 데 사용할 수 있는 여러 가지 방법이 있습니다.

논의해 봅시다:

#1:문자열 클래스에서 제공하는 생성자 사용

다음 구문을 사용하여 수행할 수 있습니다.

string st(int n,char x);

매개변수 n은 생성될 문자열의 크기를 나타냅니다.

매개변수 x는 문자열로 변환할 문자입니다.

함수는 문자열을 반환합니다.

예시 5:

#include<iostream>
#include <string>
using namespace std;
int main() {
	string st(1, 'C');
	cout << "The resulting string is : " << st;
	return 0;
}

출력:

다음은 코드의 스크린샷입니다.

코드 설명:

  1. 해당 기능을 사용하기 위해 코드에 iostream 헤더 파일을 포함합니다.
  2. 코드에 문자열 헤더 파일을 포함하여 해당 기능을 사용합니다.
  3. 코드에 std 네임스페이스를 포함하여 호출하지 않고 해당 클래스를 사용합니다.
  4. main() 함수를 호출합니다. 이 함수의 본문에 프로그램 논리를 추가해야 합니다.
  5. 문자 "C"를 1-길이 문자열로 변환하고 결과 문자열을 변수 st에 할당합니다.
  6. 다른 텍스트와 함께 콘솔에 문자열 st의 값을 인쇄합니다.
  7. 프로그램은 성공적으로 완료되면 값을 반환해야 합니다.
  8. main() 함수 본문의 끝입니다.

#2) std::string 연산자 =및 +=사용

=및 +=연산자는 이미 문자로 오버로드되었습니다. 둘은 특정 문자를 문자열로 변환하는 데 사용할 수 있습니다.

예시 6:

#include<iostream>
#include <string>
using namespace std;
int main() {
	string st;
	char b = 'B';
	st = 'A';
	st += b;
	cout << "The resulting string is : " << st;
	return 0;
}

출력:

다음은 코드의 스크린샷입니다.

코드 설명:

  1. 해당 기능을 사용하려면 코드에 iostream 헤더 파일을 포함합니다.
  2. 코드에 문자열 헤더 파일을 포함하여 해당 기능을 사용합니다.
  3. 코드에 std 네임스페이스를 포함하여 호출하지 않고 해당 클래스를 사용합니다.
  4. main() 함수를 호출합니다. 이 함수의 본문에 프로그램 논리를 추가해야 합니다.
  5. st라는 문자열 변수를 생성합니다.
  6. 값이 B인 b라는 캐릭터를 생성합니다.
  7. st라는 문자열에 A 값을 할당합니다.
  8. 문자를 문자열로 변환하려면 +=연산자를 사용하십시오.
  9. 다른 텍스트와 함께 콘솔에 문자열 st의 값을 인쇄합니다.
  10. 프로그램은 성공적으로 완료되면 값을 반환해야 합니다.
  11. main() 함수 본문의 끝입니다.

#3:std::string 메서드 사용

std::string 클래스에는 문자를 문자열로 변환하는 데 도움이 되는 많은 오버로드된 함수가 있습니다.

여기에는 다음이 포함됩니다.

예시 7:

#include<iostream>
#include <string>
using namespace std;
int main() {
	string st;
	st.push_back('A');
	cout << "push_back A returns : " << st << endl;
	st = "";
	st.append(1, 'C');
	cout << "append C returns : " << st << endl;
	st = "";
	st.assign(1, 'D');
	cout << "assign D returns : " << st << endl;
	st.insert(0, 1, 'E');
	cout << "insert single character returns : " << st << endl;
	return 0;
}

출력:

다음은 코드의 스크린샷입니다.

  1. 해당 기능을 사용하려면 코드에 iostream 헤더 파일을 포함합니다.
  2. 코드에 문자열 헤더 파일을 포함하여 해당 기능을 사용합니다.
  3. 코드에 std 네임스페이스를 포함하여 호출하지 않고 해당 클래스를 사용합니다.
  4. main() 함수를 호출합니다. 이 함수의 본문에 프로그램 논리를 추가해야 합니다.
  5. st라는 문자열 변수를 생성합니다.
  6. 문자열 끝에 문자 A를 할당합니다.
  7. 다른 텍스트와 함께 콘솔에 문자열 st의 값을 인쇄합니다. endl(끝줄)은 커서를 다음 줄로 이동합니다.
  8. 문자열 st의 값을 공백으로 설정합니다.
  9. st라는 문자열에 단일 문자 C를 할당합니다.
  10. 다른 텍스트와 함께 콘솔에 문자열 st의 값을 인쇄합니다. endl(끝줄)은 커서를 다음 줄로 이동합니다.
  11. 문자열 st의 값을 공백으로 설정합니다.
  12. 문자열 st의 내용을 단일 문자 D로 바꿉니다.
  13. 다른 텍스트와 함께 콘솔에 문자열 st의 값을 인쇄합니다. endl(끝줄)은 커서를 다음 줄로 이동합니다.
  14. 첫 번째 인덱스에서 st라는 문자열에 단일 문자 E를 삽입합니다.
  15. 다른 텍스트와 함께 콘솔에 문자열 st의 값을 인쇄합니다. endl(끝줄)은 커서를 다음 줄로 이동합니다.
  16. 프로그램은 성공적으로 완료되면 값을 반환해야 합니다.
  17. main() 함수 본문의 끝입니다.

#4: std::stringstream 사용

이 클래스를 사용하여 문자를 문자열로 변환하려면 문자를 스트림에 삽입하십시오.

그들은 문자열에 기록됩니다.

예시 8:

#include<iostream>
#include <string>
#include <sstream>

using namespace std;
int main() {

	string st;

	stringstream myst;

	myst << 'A'; 
	myst >> st;

	cout << "The conversion of the single character returns the string: " << st;

	return 0;
}

출력:

다음은 코드의 스크린샷입니다.

코드 설명:

  1. 해당 기능을 사용하려면 코드에 iostream 헤더 파일을 포함합니다.
  2. 코드에 문자열 헤더 파일을 포함하여 해당 기능을 사용합니다.
  3. 해당 기능을 사용하려면 코드에 sstream 헤더 파일을 포함하세요.
  4. 코드에 std 네임스페이스를 포함하여 호출하지 않고 해당 클래스를 사용합니다.
  5. main() 함수를 호출합니다. 이 함수의 본문에 프로그램 논리를 추가해야 합니다.
  6. st라는 문자열 변수를 생성합니다.
  7. myst라는 스트림 변수를 생성합니다.
  8. 문자 A를 myst라는 스트림 개체에 삽입합니다.
  9. 스트림 개체를 문자열로 변환합니다.
  10. 다른 텍스트와 함께 콘솔에 문자열 st의 값을 인쇄합니다. endl(끝줄)은 커서를 다음 줄로 이동합니다.
  11. 프로그램은 성공적으로 완료되면 값을 반환해야 합니다.
  12. main() 함수 본문의 끝입니다.

요약:


C 언어

  1. C++ 데이터 유형
  2. 자바 타입 캐스팅
  3. 데이터로 무엇을 해야 합니까?!
  4. C++ do… while 루프 예제
  5. 예제가 있는 C++ 포인터
  6. 예제를 사용한 C++ 연산자 오버로딩
  7. 예제가 있는 C++ 구조체
  8. 예제가 있는 C++의 std::list
  9. 프로그램 예제가 있는 C++ 함수
  10. 성능 모니터링으로 IoT의 가치 실현