GCC在初始化变量大小的数组时不会出错,只要变量是const,但如果不是,则不会编译。
这背后的原因是什么?这对我来说没有任何意义,因为据我所知,需要根据数组的大小(无论大小为7 it )来设置堆栈帧(这意味着我使用的整数文本实际上没有任何意义,如果我没有弄错的话),那么如果我初始化它,它有什么区别呢?
在这个程序中,在编译程序时,数组大小显然是未知的,而是动态的,因为它可以随用户输入的值而改变。下面是一个在成功编译(警告和无错误)之后运行的程序:输入一个号码: 124242424242阵列大小: 48如您所见,创建了一个具有用户定义的元素数量的数组,每个元素都成功地分配给了42个元素,并被证明存在于sizeof of ()操作符中。