C/C++误区

1、在函数里定义数组的时候,使用变量作为数组大小是否有问题?

之前我一直以为不能这么做,后来发现c99后支持了VLA,即动态数组。于是有了下面两个问题。

https://zh.cppreference.com/w/c/language/array?tdsourcetag=s_pcqq_aiomsg

2、sizeof是编译期间获得的值还是运行时获得的值?

VLA肯定是需要运行时确定的值

https://www.zhihu.com/question/26090484

3、栈空间需要在函数运行时确定大小吗?

我之前一直以为栈空间是在调用这个函数的时候在编译期间计算出大小,但是考虑到VLA,还有一些情况需要运行的时候决定数组要多大,所以函数应该是支持运行时调整栈深的。

https://www.zhihu.com/question/53971605

 

posted @ 2019-09-16 15:11  酱油党gsh  阅读(145)  评论(0编辑  收藏  举报