关于变长数组作为函数形参的问题
C99新增变长数组可以用来作为函数的形参,变长数组作为函数的形参时,要先传入变长数组的长度再传入数组。 例如:#include “stdio.h”
void reverse (int n,int m,int a[n][m])
{
}
int main()
{
......
scanf(“%d%d”,&n,&m);
int a[n][m];
......
reverse(n,m,a)
}
否则会出现段错误。
注意:这只是在Linux下编译并运行,因为VS2008和VS2010对C99都不支持,因此,如果在VC平台上用数组作形参时只能指定长度。