다음 코드는 실행하지 않는 것이 좋습니다. 이 예에서 :배열 길이보다 큰 인덱스의 요소에 액세스 할 수 있음
#include <iostream>
using namespace std;
int main()
{
char data[1];
cout<<"Enter data: ";
cin>>data;
cout<<data[2]<<endl;
}
이 길이의 문자열을 입력 1보다 큰 어레이가 (예를 들어, "L")를 유지하기에 충분히 큰 것처럼 (예를 들어, "안녕하세요") 출력을 생성한다. 배열보다 긴 값을 저장하려고했거나 배열 길이보다 큰 인덱스 값을 검색하려고 시도했을 때 오류가 발생하지 않아야합니까?
작동하지 않을 수도 있으므로이 동작에 의존해서는 안됩니다. – weidi
관련 질문 : http://stackoverflow.com/questions/1239938/c-accesses-an-array-out-of-bounds-gives-no -error-why – nurettin