Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

C++의 ()에 있는 문자열

<시간/>

추상

이 짧은 튜토리얼은 C++ String 클래스 at()에 대한 개요입니다. 문자열에서 일련의 문자에 액세스하기 위한 기능입니다. 다음 섹션에서 열렬한 독자는 문자열 클래스 프로그래밍 예제를 통해 at() 조작에 대한 철저한 이해를 얻을 수 있습니다. 기능.

문자열 클래스

프로그래밍 용어로 문자열은 일반적으로 큰따옴표로 표시되며 문자 모음을 포함합니다. 문자열 클래스는 반복자 연산자 []를 사용하여 모든 문자를 반복하기 위한 컨테이너 클래스이기도 합니다. 게다가 String 클래스는 메모리 및 null 종료와 관련된 모든 작업을 처리합니다. 문자열 특정 위치에서 문자를 추출하는 데 사용되는 ()의 중요한 방법 중 하나인 필수 기능을 활용하면 누구나 비교, 복사, 연결, 검색, 정렬 등을 포함한 문자열 관련 작업을 많이 수행할 수 있습니다.

String.at() 메소드

at() String 클래스의 메서드는 문자열에 있는 특정 문자에 액세스하도록 설계되었습니다. pos 주어진 문자열에서 문자의 유효한 위치입니다. 그렇지 않으면 "out_of_range" 예외가 발생합니다. 구문의 사용법은 다음과 같습니다.

구문

char& at (size_type id);
const char& at (size_t pos) const;

다음 C++ 프로그램 구성은 String 클래스 at()의 사용법을 보여줍니다. 프로그램이 먼저 입력 문자열의 길이를 결정한 다음 at() 메소드는 문자열의 주어진 위치에서 특정 문자를 다음과 같이 검색합니다.

#include <iostream>
using namespace std;
void retrieveChar(string str){
   char chr;
   // Calculating the length of string
   int len = str.length();
   // retrieving characters
   for (int i = 0; i < len; i++) {
      chr = str.at(i);
      cout << chr << " ";
   }
}
int main(){
   retrieveChar("ajaykumar");
   return 0;
}

위의 코드에서 볼 수 있듯이 모든 문자열 연산 코드는 retrieveChar() 메서드는 나중에 프로그램 main() 실행에 전달됩니다. example.CPP 파일을 성공적으로 컴파일한 후 ann 입력 문자열의 문자가 String 클래스 메서드 at() 덕분에 순차적으로 액세스되는 다음 출력을 생성합니다. 로;

a j a y k u m a r

보안 정보

다양한 소스에서 입력된 문자열은 외부 악성 출력 및 특수 블랙햇 해킹 전술에 의존하여 프로그램의 기본 동작 및 출력을 변경하는 수단도 뻔히 제공하기 때문에 보안 전문가에게 특별한 관심사입니다. 해커는 종종 문자열 표현 취약점의 약점을 악용하여 프로그램에 치명적인 손상을 입힙니다. 따라서 프로그램에서 적절한 문자열 관련 조치 및 지침을 확인하여 위협을 무익하게 하는 것이 좋습니다.

결론

그래서 우리는 문자열 클래스와 그 핵심 메소드 at()에 대해 자세히 알아보았습니다. 앞서 말한 코드 조각에서 순차적인 방식으로 문자열의 문자에 액세스하는 계정의 사용 구문과 함께. 마지막으로, 버퍼 오버플로, 사이트 간 스크립팅, 형식 문자열, 정규화 및 더 많은 주목할만한 버그와 같은 악용으로 이어지는 문자열 관련 취약성과 약한 표현을 표면화했습니다.