int arr[n] int* arr = new int[n] 许多C ++编译器支持C ++中的C99功能,但它不是有效的C ++。 这也是您不应该为此目的使用的功能,即使编译器支持它并且您也不在乎可移植性。 堆栈空间通常比动态空间更受限制。 因此,请勿将您的代码暴露给毫无意义的堆栈溢出。 只需使用动态分配。