memset怖いらしい。

勘所があるみたい。

メモを残す

 

memsetはint以外でも使えるか?
ゼロ初期化目的であればOKな型:
int, float, double, bool, char, short, long, unsigned 系
いわゆる「POD(Plain Old Data)」型ならOK
NGや危険:
ポインタ(アーキテクチャ依存でNULLポインタが非0バイトになる場合あり)
オブジェクト型(コンストラクタ・デストラクタを持つ)

memsetでゼロ埋めしたいなら、「すべてのビットが0で意味がある」型だけにするのが安全。

 

引用 ChatGPT