首先看这一段代码
int n;
cin>>n;
int a[n][n] = {};
看似没有问题,但是在vs code上报错,显示variable-sized object may not be intialized;
原因是自定的变量只可以去定义数组长度,不可以去初始化。
因此想要初始化带变量的数组,可以选择使用memset:
memset是一个初始化函数,作用是将某一块内存中的全部设置为指定的值。
memset(f,0,sizeof(f));
f指向要填充的内存块。
0是要被设置的值。//0即初始化
sizeof(f)是要被设置该值的字符数。
返回类型是一个指向存储区s的指针。