我在全局范围内声明了以下内容
char a[20] = " ";
char b[20] = " ";
char c[20] = " ";
char d[20] = " ";
我需要在方法中将这些变量设置为 NULL。所以我使用
void mymethod()
{
a[10]=" ";
b[10]=" ";
c[10]=" ";
d[10]=" ";
}
但是变量仍然保留其旧值。我做错了什么?
最佳答案
char a[20] = "";
这是在声明期间初始化数组。
鉴于
a[10] = "";
这实际上是为数组中的元素设置一个值。
尝试使用
memset(a,0,sizeof(a));
在函数中初始化数组。
关于c - 重置字符数组值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35570782/