将字符数组设置为所有零值(在C中)

将字符数组设置为所有零值(在C中),c,arrays,initialization,character,array-initialization,C,Arrays,Initialization,Character,Array Initialization,如何将vars数组设置为所有零“0”值 typedef char array_t[100]; void setvars(array_t vars[], int lens[]) { /*vars : 10 numbers lens : the length of 10 numbers in vars */ . . . } 感谢您的帮助。只需使用: 其中num是len的长度。使用loop或memset。请不要问怎么做。您的数组类型定义几乎肯定不是您想要的。特别是,您不能按值传递该类型,因为当用作

如何将vars数组设置为所有零“0”值

typedef char array_t[100];

void
setvars(array_t vars[], int lens[]) {
/*vars : 10 numbers
lens : the length of 10 numbers in vars
*/
.
.
.
}
感谢您的帮助。

只需使用:

其中num是len的长度。

使用loop或memset。请不要问怎么做。您的数组类型定义几乎肯定不是您想要的。特别是,您不能按值传递该类型,因为当用作函数参数时,它将衰减为char*。
void
setvars(array_t *vars, size_t num, size_t *len) {
    size_t i;
    for(i = 0; i < num; i++)
    {
        memset(vars[i], 0, len[i]);
    }
}