C++의 문자열에서 마지막 문자 제거

Namita Chaudhary 2023년10월12일
  1. C++의 문자열에서 마지막 문자 제거
  2. pop_back() 함수를 사용하여 C++의 문자열에서 마지막 문자 제거
  3. erase() 메서드를 사용하여 C++의 문자열에서 마지막 문자 제거
  4. erase(pos,Len) 함수를 사용하여 문자열의 마지막 문자 제거
  5. erase(iterator) 기능을 사용하여 문자열의 마지막 문자 제거
  6. substr() 메서드를 사용하여 문자열에서 마지막 문자 제거
  7. resize() 메서드를 사용하여 문자열에서 마지막 문자 제거
  8. 결론
C++의 문자열에서 마지막 문자 제거

C++의 문자열은 다른 작업을 수행하기 위해 일련의 문자를 저장하는 데 사용됩니다. 이 기사에서는 문자열을 사용하고 문자열에서 마지막 문자를 제거합니다.

C++의 문자열에서 마지막 문자 제거

C++에서 문자열은 문자 배열 또는 표준 문자열 클래스의 두 가지 방법으로 선언할 수 있습니다. 그러나 배열의 크기가 고정되어 있고 인스턴스화된 개체가 아니기 때문에 문자 배열에서 마지막 요소를 제거할 수 없습니다.

C++의 문자열 클래스에는 마지막 문자를 제거한 후 문자열을 제공하는 여러 내장 함수가 포함되어 있습니다. pop_back() 함수와 erase() 함수가 그 중 두 가지입니다.

pop_back() 함수를 사용하여 C++의 문자열에서 마지막 문자 제거

pop_back()은 문자열에서 마지막 요소를 제거하는 C++ STL의 내장 함수입니다. 단순히 마지막 요소를 삭제하고 그에 따라 문자열의 길이를 조정합니다.

코드 조각:

#include <iostream>
using namespace std;

int main() {
  string str;
  cin >> str;
  cout << "Original String: " << str << endl;
  str.pop_back();
  cout << "Required String: " << str << endl;
  return 0;
}

출력:

Original String: Welcome
Required String: Welcom

erase() 메서드를 사용하여 C++의 문자열에서 마지막 문자 제거

erase() 메서드는 문자열 클래스의 내장 메서드입니다. 이 메서드는 인덱스를 지정하여 단일 문자 또는 문자 범위를 삭제할 수 있습니다.

erase() 메서드를 사용할 수 있는 세 가지 다른 변형이 있지만 마지막 문자만 제거하면 되므로 그 중 두 가지에 대해 설명하겠습니다.

erase(pos,Len) 함수를 사용하여 문자열의 마지막 문자 제거

이 함수에는 두 개의 매개변수가 제공되며, 하나는 인덱스와 함께 제거할 문자를 지정하는 pos입니다. 두 번째는 문자열에서 제거할 문자의 길이 또는 수를 알려주는 Len입니다.

코드 조각:

#include <iostream>
using namespace std;

int main() {
  string str;
  cin >> str;
  cout << "Original String: " << str << endl;
  str.erase(str.size() - 1, 1);
  cout << "Required String: " << str << endl;
  return 0;
}

출력:

Original String: Hello
Required String: Hell

erase(iterator) 기능을 사용하여 문자열의 마지막 문자 제거

이 함수는 제거할 문자를 가리키는 iterator라는 하나의 매개변수만 사용합니다. 따라서 size()-1을 매개변수로 전달합니다. 왜냐하면 0에서 size()-1까지의 인덱싱은 문자열의 마지막 문자를 가리킬 것이기 때문입니다.

코드 조각:

#include <iostream>
using namespace std;

int main() {
  string str;
  cin >> str;
  cout << "Original String: " << str << endl;
  str.erase(str.size() - 1);
  cout << "Required String: " << str << endl;
  return 0;
}

출력:

Original String: Hello
Required String: Hell

substr() 메서드를 사용하여 문자열에서 마지막 문자 제거

substr() 메서드는 원래 문자열에서 부분 문자열을 반환합니다. 그것은 두 개의 매개변수, 즉 부분 문자열의 시작 인덱스와 원하는 부분 문자열의 길이를 취합니다.

시작 인덱스를 제공하지 않으면 기본값 0이 반환되고 길이가 지정되지 않으면 문자열의 모든 문자가 사용됩니다. size() 메소드는 문자열의 길이를 제공하고 size()-1은 두 번째 마지막 문자까지의 길이를 제공합니다.

코드 조각:

#include <iostream>
using namespace std;

int main() {
  string str;
  cin >> str;
  cout << "Original String: " << str << endl;
  cout << "Required String: " << str.substr(0, str.size() - 1) << endl;
  return 0;
}

출력:

Original String: Welcome
Required String: Welcom

이 함수의 중요한 점 중 하나는 원래 문자열을 수정하지 않고 새 문자열을 생성한다는 것입니다.

resize() 메서드를 사용하여 문자열에서 마지막 문자 제거

resize() 메소드는 문자열의 크기를 조정하고 컨테이너에서 요소를 삽입하거나 제거하여 내용을 변경합니다. 따라서 문자열의 길이를 1로 줄여야 하므로 사용할 수 있습니다.

원하는 문자열의 길이를 전달해야 합니다. 앞에서 설명한 것처럼 size-1은 마지막 문자를 제거하여 문자열을 제공합니다.

코드 조각:

#include <iostream>
using namespace std;

int main() {
  string str;
  cin >> str;
  cout << "Original String: " << str << endl;
  str.resize(str.size() - 1);
  cout << "Required String: " << str << endl;
  return 0;
}

출력:

Original String: Welcome
Required String: Welcom

결론

이 자습서에서는 문자열에서 마지막 문자를 제거하고 위에서 언급한 방법을 사용하여 코드 예제를 표시할 수 있는 네 가지 다른 방법에 대해 이야기했습니다.

C++ 표준 템플릿 라이브러리(STL)의 pop_back(), erase(), resize() 메소드의 구문과 substr() 메소드에 대해 배웠습니다.

관련 문장 - C++ String