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

C++ char 타입 마스터: 선언, ASCII 코드, 문자열 변환 기법

char란?

C++에서 char 타입은 단일 문자를 저장하는 기본 정수 데이터 타입입니다. 내부적으로 8비트 정수로 표현되며 정확히 1바이트 메모리를 차지합니다. 정수 타입이므로 다른 숫자 타입처럼 산술 연산과 비교에 참여할 수 있습니다.

이 튜토리얼에서 배울 내용:

ASCII – 근간이 되는 인코딩

char 값이 저장될 때 C++ 컴파일러는 이를 ASCII 코드, 즉 미국 정보 교환 표준 부호로 해석합니다. ASCII는 각 출력 가능 문자에 정수 값(0~127)을 할당합니다. 예를 들어 문자 'a'는 10진수 97에 대응합니다.

char 변수 선언

문자 변수를 선언하려면 char 키워드 뒤에 이름을 사용하세요. 선택적으로 작은따옴표로 묶인 단일 문자 리터럴로 초기화할 수 있습니다.

char variableName; // 선언
char variableName = 'X'; // 선언과 초기화

예제 1: char 선언 및 출력

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

출력:

C++ char 타입 마스터: 선언, ASCII 코드, 문자열 변환 기법

문자의 ASCII 값 출력

char는 본질적으로 정수이므로 int로 캐스팅하여 ASCII 코드를 드러낼 수 있습니다.

예제 2: 사용자 입력 및 ASCII 출력

#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;
} 

출력:

C++ char 타입 마스터: 선언, ASCII 코드, 문자열 변환 기법

ASCII 코드에서 문자 출력

정수 리터럴을 char 변수에 할당하면 컴파일러는 그 정수를 ASCII 코드로 해석하고 해당 문자를 저장합니다.

예제 3: ASCII에서 char 변환

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

출력:

C++ char 타입 마스터: 선언, ASCII 코드, 문자열 변환 기법

사용자로부터 문자 읽기

추출 연산자 >>는 입력된 첫 번째 공백이 아닌 문자만 읽습니다. 이후 문자들은 읽을 때까지 입력 버퍼에 남습니다.

예제 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;
} 

출력:

C++ char 타입 마스터: 선언, ASCII 코드, 문자열 변환 기법

문자를 문자열로 변환

단일 문자를 std::string으로 변환하는 여러 기법이 있습니다. 가장 일반적인 접근법들을 소개합니다.

#1 – 문자열 생성자 사용

string st(1, 'C');

이 코드는 길이 1, 문자 'C'를 포함하는 문자열을 생성합니다.

예제 5

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

출력:

C++ char 타입 마스터: 선언, ASCII 코드, 문자열 변환 기법

#2 – 오버로드된 = 및 += 연산자 사용

문자를 문자열에 직접 대입하거나 추가하는 것은 간결하고 읽기 쉽습니다.

예제 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;
} 

출력:

C++ char 타입 마스터: 선언, ASCII 코드, 문자열 변환 기법

#3 – 문자열 멤버 함수 사용

예제 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;
} 

출력:

C++ char 타입 마스터: 선언, ASCII 코드, 문자열 변환 기법

#4 – std::stringstream 사용

스트림 연산자는 char에 대해 오버로드되어 있어 문자열로 쉽게 변환 가능합니다.

예제 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;
} 

출력:

C++ char 타입 마스터: 선언, ASCII 코드, 문자열 변환 기법

핵심 요약

C 언어

  1. C++ 데이터 타입 이해하기: 기초, 수정자, 모범 사례
  2. Java 타입 캐스팅 마스터하기: 자동 형변환부터 명시적 형변환까지
  3. 신뢰성의 인터넷(Internet of Reliability)에서 데이터 활용: 효과적 관리 전략
  4. C++ do-while 루프: 문법, 실전 예제, 중첩 루프
  5. C++ 포인터 완전 정복: 개념, 예제, 실전 활용
  6. C++ 연산자 오버로딩 실전 가이드: 문법, 접근법, 코드 예제
  7. C++ 구조체(struct) 완벽 가이드: 선언, 인스턴스, 포인터, 함수 인자 전달
  8. C++ std::list 마스터하기: 문법, 함수, 실전 예제
  9. C++ 함수 완전 정복: 실전 코드 예제로 이해하기
  10. 고급 성능 모니터링으로 IoT ROI 극대화