我正在以这种方式定义一个char指针。
char *s=(char *)malloc(10);
Run Code Online (Sandbox Code Playgroud)
在填写了所有可能的值后,我想清除我写给s的任何内容,而又不想使用malloc来写s了吗?我怎样才能做到这一点?
我需要更新内容,但是如果在上一次迭代中并非所有值都被更新,那么我将处理我不想做的旧值。
您可以通过使用memset并将内存块中的所有字节设置为 来“清除”内存0。例如:
#define MEMORY_BLOCK 10
//allocate memory
unsigned char* s = malloc(MEMORY_BLOCK);
//... do stuff
//clear memory
memset(s, 0, MEMORY_BLOCK);
Run Code Online (Sandbox Code Playgroud)