c/c++ 什么时候支持用变量定义数组大小的?

lieefu 发布于 2015/05/30 09:18
阅读 1K+
收藏 0
#include <iostream>
using namespace std;
int main(){
	//cout<<"Hello world";
	int n;
	cout<<"Input array size:";
	cin>>n;
	int arr[n];
	cout<<"array size is "<<sizeof(arr)/sizeof(arr[0]);
	return 0;
}



通过测试验证,上面代码编译和运行都能通过。gcc版本是 4.4.5

记得大学教材,老师反复强调,数组大小不能用变量,必须在编译阶段前确定大小的。



加载中
1
k
kchr

这种问题难道不应该去看编译器手册?

http://gcc.gnu.org/onlinedocs/gcc/Variable-Length.html

1
小熊宝宝
小熊宝宝

和编译器有关。
试了一下,g++ 4.8.3可以,c++builder 2010 不支持,显示编译错误

0
公孙二狗
公孙二狗

C不支持,C++2005年前记得就支持的,很久到已经忘记了。

0
李志刚123
一个vecotr全部搞定
返回顶部
顶部