0

据我所知,当我分配char[]大小为 200,000 并希望将整个缓冲区初始化为零时。我有两种方法:

const size_t SZ_LARGE_BUF = 200000;
  1. char *largeBuf = new char[SZ_LARGE_BUF]; memset(blablabla);
  2. char *largeBufWithInit = new char[SZ_LARGE_BUF]();

但问题是,当我在 linux 中运行第二个代码时,它总是卡住,但在 windows VS2010 中编写相同的代码是可以的。第一个代码在 Linux 和 Windows 中都可以。

memset我想知道和之间有什么区别init syntax吗?

4

0 回答 0