1. ホーム
  2. c++

[解決済み] memsetなどが既にあるのに、なぜZeroMemoryなどが存在するのですか?

2022-02-16 10:43:29

質問内容

なぜ ZeroMemory() Cの標準ライブラリにはmemsetやそれに関連する呼び出しがすでにあるのに、Windows APIには同じような呼び出しがあるのでしょうか?どれを呼べばいいのでしょうか?答えは、quot;depends" だと思います。何についてですか?

解決方法は?

CやC++の場合。 ZeroMemory()memset() は全く同じものです。

/* In winnt.h */
#define RtlZeroMemory(Destination,Length) memset((Destination),0,(Length))

/* In winbase.h */
#define ZeroMemory RtlZeroMemory

なぜ ZeroMemory() では わかりやすくするため。 しかし、私は memset() CやC++のプログラムでは