It is interesting to see the variable-length array (VLA) in C primer plus occasionally.
In his c primer plus and C ++ primer plus, the author clearly states that the number of elements in the group must be an integer constant rather than a variable when defining an array. But in C, the variable length array VLA is not mentioned in c ++. I don't know why? It must be a bit ambiguous to use VLA.
I tried to write a small program for testing, and compilation and running were normal.
# Include <iostream>
Void VLA (INT length)
{
Int V [length];
For (INT I = 0; I <length; I ++)
{
V [length] = I;
STD: cout <V [I] <"/N ";
}
Return 0;
}
Int main ()
{
Int length = 0;
STD: cout <"Enter length :";
STD: CIN> length;
VLA (length );
Return 0;
}
It is also good to handle dynamic memory allocation! Without memory leakage, it is convenient and easy.
Only the author of C primer plus pointed out that it is necessary to determine that the compiler version can support the VLA feature. Haha!