int* array = new int [n];
은 힙에 메모리 공간을 할당한다는 것을 알고 있습니다.다른 방법으로 동적 배열 선언
그런 식으로 선언하면 : int array[n];
codeblocks에서 성공적으로 컴파일되지만 Visual Studio로 이동하면 오류가 발생합니다.
내가 물어보고 싶은 것입니다 :
무엇
int[n]
정말로 않고 어떻게 힙 할당에 비교하면 어떻습니까? 그들 사이의 차이점은 무엇입니까?int* array = new int [n];
대신int array[n]
을 사용하면 어떤 오류가 발생할 수 있습니까?
가변 길이는 정적 크기 배열에 사용하면 안됩니다. 코드 블럭은 GCC가 아마도 그것을 확장으로서 지원하기 때문에 그것을 받아 들인다. – 0x499602D2
GCC에서 가져온 문서 :'가변 길이 자동 배열은 ISO C99에서 허용되며 GCC에서 C90 모드와 C++로 허용합니다. ' – chris