본문 바로가기

프로그래밍 언어[개념]/C++

String에 무한히 값을 넣어도 될까?

String str;
char value = 'a';

while(1)
{
	str += value;
}

위와 같은 코드는 이론적으로는 str 문자열에 문자를 계속 추가할 수 있다.

하지만 메모리 제한으로 인해 문제가 발생한다.

while문이 계속 실행됨에 따라 str 문자열의 크기가 계속 증가하여 결국 시스템에서 사용 가능한 모든 메모리를 소비하게 된다.

시스템에 메모리가 부족해지면 프로그램이 충돌하거나 오류가 발생할 수 있다.

결론적으로 이 코드는 이론적으로 str 문자열에 무한한 수의 값을 넣으려고 하지만 실제로 프로그램에서 사용할 수 있는 메모리 양에 의해 제한된다.