문자열을 문자 배열로 변환

C++Beginner
지금 연습하기

소개

이 랩에서는 C++ 에서 문자열을 문자 배열로 변환하는 방법을 시연합니다. string.h 라이브러리 내에 정의된 c_str() 메서드를 사용하여 문자열을 문자 배열로 변환합니다.

라이브러리 포함 및 네임스페이스 정의

다음 명령을 사용하여 ~/project 디렉토리에 main.cpp라는 새 파일을 생성합니다.

touch ~/project/main.cpp

먼저, 필요한 헤더 파일을 포함하고 사용할 std 네임스페이스를 정의해야 합니다.

#include <iostream>
#include <string.h>

using namespace std;

변수 선언 및 문자열 입력

string 변수를 선언하고 사용자에게 공백 없이 문자열을 입력하도록 요청합니다.

int main()
{
    string s;
    cout << "Enter a string without any space: ";
    cin >> s;
}

문자열에서 문자 배열 생성

strncpy 함수를 사용하여 입력 문자열에서 문자 배열을 생성합니다. sizeof 연산자를 사용하여 배열의 크기를 결정합니다.

char cArray[1024];
strncpy(cArray, s.c_str(), sizeof(cArray));

배열 요소 0 으로 초기화

배열에 가비지 값 (garbage values) 이 들어가는 것을 방지하기 위해, 다음 문장을 사용하여 배열의 모든 요소를 0 으로 초기화합니다.

cArray[sizeof(cArray) - 1] = 0;

배열 요소 출력

그런 다음 배열을 순회하며 모든 요소를 출력합니다.

for (int i = 0; cArray[i] != 0; i++)
{
    cout << "cArray[ " << i << " ]: " << cArray[i] << endl;
}

코드를 컴파일하고 실행하려면 터미널에서 다음 명령을 사용하십시오.

g++ main.cpp -o main && ./main

요약

이 랩에서는 C++ 에서 문자열을 문자 배열로 변환하는 방법을 배웠습니다. c_str() 메서드를 사용하여 입력 문자열로부터 문자 배열을 생성합니다. 배열의 모든 요소를 0 으로 초기화한 다음, 배열을 순회하며 모든 요소를 출력했습니다.