C++ 如何用memset清除char数组

C++ 如何用memset清除char数组,c++,c,buffer,memset,C++,C,Buffer,Memset,我正在寻找一种清除字符数组的方法,类似于在python中执行以下操作的方法: buffer = "" 使用memset是实现这一点的最佳方法,还是我缺少另一个内置函数/方法 我试过的: memset(buf, '\n', sizeof(char)); 因为sizeofchar是1,所以您不需要它。如果字符数组的大小为s,请使用以下代码: memset(buffer, 0, s); 这将把缓冲区中的每个字节上的0写入下一个s字节。执行一个memsetbuf,“\0”,sizeof bufb

我正在寻找一种清除字符数组的方法,类似于在python中执行以下操作的方法:

buffer = ""
使用memset是实现这一点的最佳方法,还是我缺少另一个内置函数/方法

我试过的:

 memset(buf, '\n', sizeof(char));

因为sizeofchar是1,所以您不需要它。如果字符数组的大小为s,请使用以下代码:

memset(buffer, 0, s);

这将把缓冲区中的每个字节上的0写入下一个s字节。

执行一个memsetbuf,“\0”,sizeof bufbuffer=不清除缓冲区,只分配一个空字符串…如果您只是从逻辑上想清除数组,以便它不被打印或其他任何内容,那么只需buf[0]=“\0”就足够了…缓冲区是什么?为什么要用C和C++来显示最佳的方法,我们需要一个实际的使用实际代码的用例,而只需要一个可以清除数组缺失的行。尤其重要的是,为什么数组需要清晰。准确地说,它的行为就像它那样。它可能会也可能不会真的这样做。例如,如果应用程序正在确保某些机密在内存中的保留时间不会超过必要的时间,那么这可能很重要。