memset 清 0 完全正确

函数介绍:

void *memset(void *s, int ch, size_t n);
函数解释:将s中当前位置后面的n个字节 (typedef unsigned long long size_t )用 ch 替换并返回 s 。
memset:作用是在一段内存块中填充某个给定的值,它是对较大的结构体或数组进行清零操作的一种最快方法。
memset()函数原型是extern void *memset(void *buffer, int c, int count) buffer:为指针或是数组,c:是赋给buffer的值,count:是buffer的长度.

代码:

#include
using namespace std;
typedef unsigned char byte;

int main()
{
    byte str[32];
    for (int i = 0; i < 33; i++)
        cout << int(str[i]) << "\t";

    cout << endl << endl;

    memset(str, 0, 32);

    for (int i = 0; i < 33; i++)
        cout << int(str[i]) << "\t";
}

结果:

204     204     204     204     204     204     204     204     204     204     204     204     204     204     204     204     204     204     204     204     204     204     204     204     204     204     204     204     204     204     204     204     204

0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       0       204

你可能感兴趣的:(memset 清 0 完全正确)