string array c implementation representation with examples
C ++의 문자열 배열은 문자열 배열입니다. 이 자습서에서는 C ++에서 문자열 배열의 표현 및 구현에 대한 세부 정보를 살펴 봅니다.
이전 튜토리얼에서 C ++의 배열을 보았습니다. 배열을 사용하면 다양한 유형의 데이터 요소를 선언 할 수 있습니다. 모든 숫자 데이터 유형의 배열은 작업 및 구현에서 동일하며 문자열 데이터 유형의 배열은 다릅니다.
eps 파일을 열 수있는 것
C ++에서 문자열은 문자 배열로 표현되거나 C ++에서 지원하는 문자열 클래스를 사용하여 표현 될 수 있습니다. 각 문자열 또는 배열 요소는 널 문자로 종료됩니다. 문자 배열을 사용하여 문자열을 표현하는 것은 C에 문자열 유형이 없기 때문에‘C’언어에서 직접 가져옵니다.
=> 무료 C ++ 과정을 보려면 여기를 클릭하십시오.
학습 내용 :
string 형 배열 구현
C ++에서 문자열은 세 가지 방법으로 표현할 수 있습니다.
- 2 차원 문자 배열 사용 : 이 표현은 각 요소가 행과 열 번호의 교차점이고 문자열을 나타내는 2 차원 배열을 사용합니다.
- 문자열 키워드 사용 : C ++의 문자열 키워드를 사용하여 문자열 배열을 선언하고 정의 할 수도 있습니다.
- STL 벡터 사용 : 벡터의 각 요소가 문자열 인 STL 벡터를 사용할 수 있습니다.
이제 위의 각 방법에 대해 논의하고 각 표현에 대한 프로그래밍 예제도 살펴 보겠습니다.
2 차원 문자 배열 사용
문자열 배열 또는 문자열 배열은 특수한 형태의 2 차원 배열을 사용하여 표현할 수 있습니다. 이 표현에서 우리는 문자열을 표현하기 위해 문자 유형의 2 차원 배열을 사용합니다.
첫 번째 차원은 요소 수, 즉 해당 배열의 문자열을 지정하고 두 번째 차원은 배열에있는 각 요소의 최대 길이를 지정합니다.
따라서 아래와 같이 일반적인 표현을 사용할 수 있습니다.
char “stringarrayname” (“number of strings”) (“maximum length of the string”)
예를 들면다음 선언을 고려하십시오.
char string_array(10) (20);
위의 선언은 10 개의 요소가 있고 각 요소의 길이가 20 개 이하인‘string_array’라는 문자열 배열을 선언합니다.
다음과 같은 방법으로 문자열을 사용하여 동물 배열을 선언하고 초기화 할 수 있습니다.
char animals (5) (10) = {“Lion”, “Tiger”, “Deer”, “Ape”, “Kangaroo”};
개념을 더 잘 이해하기 위해 2 차원 문자 배열 개념을 사용하는 프로그래밍 예제를 살펴 보겠습니다.
#include using namespace std; int main() { char strArray(5) (6) = {'one', 'two', 'three', 'four', 'five'}; cout<<'String array is as follows:'< 산출:
위의 프로그램에서 우리는 각 요소의 최대 길이가 10 인 strArray라는 문자열 배열을 크기 5로 선언했습니다. 프로그램에서 배열의 각 요소를 표시하기 위해 for 루프를 시작합니다. 요소를 표시하려면 첫 번째 차원을 사용하여 배열에 액세스하면됩니다.
요소에 쉽게 액세스 할 수 있다는 점은 2D 어레이의 주요 장점 중 하나입니다. 그들은 실제로 프로그램하기가 간단합니다.
이러한 유형의 표현의 주요 단점은 배열의 차원, 즉 요소 수와 요소의 최대 길이가 모두 고정되어 있으며 원하는대로 변경할 수 없다는 것입니다.
둘째, 배열을 선언하는 동안 각 요소의 최대 길이를 두 번째 차원으로 지정합니다. 문자열 길이가 100으로 지정되고 길이가 더 짧은 모든 요소가있는 경우 메모리가 낭비됩니다.
문자열 키워드 사용
여기에서는 C ++에서 키워드 '문자열'을 사용하여 문자열 배열을 선언합니다. 문자 배열과 달리 여기에는 1D 배열 만 있습니다. 유일한 차원은 배열의 문자열 수를 지정합니다.
string 키워드를 사용하는 문자열 배열 선언의 일반 구문은 다음과 같습니다.
string “array name” (“number of strings”);
여기서 문자열의 최대 길이는 지정하지 않습니다. 이것은 배열 요소의 길이에 제한이 없음을 의미합니다.
예를 들어 다음과 같은 방법으로 색상 이름 배열을 선언 할 수 있습니다.
string colors(5);
다음과 같이이 배열을 추가로 초기화 할 수 있습니다.
string colors(5) = {“Red”, “Green”, “Blue”, “Orange”, “Brown”};
다음은 문자열 키워드와 문자열 배열에서의 사용법을 이해하는 C ++ 프로그램입니다.
#include using namespace std; int main() { string numArray(5) = {'one', 'two', 'three', 'four', 'five'}; cout<<'String array is as follows:'< 산출:
이전 문자 배열 프로그램을 수정하고 문자열 키워드의 사용법을 시연했습니다. 프로그램의 출력은 동일하지만 문자열 키워드를 사용하여 문자열 배열을 정의하므로 달성 방법이 다릅니다.
string 키워드를 사용하는 문자열 배열은 배열의 문자열 길이에 제한이 없다는 장점이 있습니다. 제한이 없기 때문에 메모리 공간도 낭비하지 않습니다.
단점은이 배열의 크기가 고정되어 있다는 것입니다. 배열의 크기를 미리 선언해야합니다.
STL 벡터 사용
동적 배열을 선언하고 정의하기 위해 STL 벡터를 사용할 수도 있습니다. 따라서 문자열 배열을 정의하기 위해 문자열 유형의 STL 벡터를 가질 수 있습니다.
벡터를 사용한 문자열 배열 선언은 다음과 같습니다.
vector “stringarray_Name”;
위의 선언을 참조하여 다음과 같은 방법으로 벡터 'subjects'를 선언 할 수 있습니다.
vector mysubjects;
'push_back'메서드 또는 다른 STL 벡터 메서드를 사용하여 벡터에 요소를 할당 할 수 있습니다.
다음은 C ++를 사용하여 문자열 배열을 나타내는 STL 벡터의 사용법을 보여주는 프로그래밍 예제입니다.
#include #include using namespace std; int main() { vector myNumbers; myNumbers.push_back('one'); myNumbers.push_back('two'); myNumbers.push_back('three'); myNumbers.push_back('four'); myNumbers.push_back('five'); cout<<'String array is as follows:'< 산출:
위의 프로그램에는 문자열 유형의 STL 벡터 myNumbers가 있습니다. 다음으로 push_back 메서드를 사용하여이 벡터에 요소를 추가 한 다음 벡터의 각 요소를 표시합니다.
STL 벡터와 문자열 배열의 전체 작동을 보면이 경우 배열의 요소 수나 각 요소의 최대 길이에 제한이 없음을 알 수 있습니다. 벡터를 사용하는 문자열 배열은 완전히 동적이며 동적으로 줄이거 나 늘릴 수 있습니다.
내 네트워크 보안 키는 어디에 있습니까
사용할 표현을 선택하는 방법?
이제 string 형 배열의 세 가지 표현을 모두 보았으므로 세 가지 표현 모두에서 벡터 표현이 본질적으로 동적이므로 최고라고 결론을 내릴 수 있습니다.
문자열 배열의 목적과 요구 사항에 따라 다릅니다. 고정 된 크기의 문자열 배열이 필요하고 문자열 배열에 들어갈 정확한 데이터를 알고 있다면 문자 배열이나 문자열 표현을 선택할 수 있습니다.
문자열 배열이 동적으로 늘어나거나 줄어들기를 원할 때, 배열을 동적으로 변경하여 프로그램을 개발하는 데 도움이되는 벡터 표현에 의지 할 수 있습니다.
결론
string 형 배열은 데이터를 문자열로 갖는 특수 배열입니다. 이것은 배열의 각 요소가 널 문자로 끝나는 문자열임을 의미합니다.
우리는 장단점과 함께 문자열 배열의 세 가지 표현에 대해 자세히 논의했습니다. 우리의 요구 사항에 따라 구현에 적합한 문자열 배열의 모든 표현을 사용할 수 있습니다.
이후 튜토리얼에서는 C ++ 문자열과 C ++ 함수를 자세히 살펴볼 것입니다.
추천 도서