首先为什么要初始化数组:假如创建了一个没有初始化的数组,里面其实各个位置是含有值的,举例:
char a[10];
char b[] ="duiao1222";
strcpy(a,b);
非常简单的函数就是让a为b的一个复制数组,但是真的去输出a的时候,结果并不是这,这是因为a并不是一个全为0的字符数组。
最为简单的初始化方法就是char a[10] = {0};就可以将所有位置初始化为‘\0’。
当然可能会有一些情况导致这种方法不能初始化,或者字符数组是动态创建的,没有一个可以进行{0}的一个方式的话,建议使用memset函数。
memset(void * a,int b, size c)其中void * a是任意类型的数组或是指针,int b为初始化的内容(由于是初始化内存所以内存只能为0/-1),size c 为将a中设置初始化的长度。
C语言 字符数组初始化以及memset函数
最新推荐文章于 2022-02-12 22:33:48 发布