9
memsetでbzeroを使用する理由
私はこの前学期に受けたシステムプログラミングクラスで、基本的なクライアント/サーバーをCで実装する必要がありました。などの構造体sock_addr_inや文字バッファー(クライアントとサーバー間でデータを送受信するために使用)を初期化するときにそれらを使用するだけで初期化しbzeroないように指示しmemsetました。彼はなぜその理由を説明したことがなく、これに正当な理由があるかどうか私は知りたいですか? 私はここを参照してください:http : //fdiv.net/2009/01/14/memset-vs-bzero-ultimate-showdownこれbzeroはメモリをゼロにするだけなので、より効率的であるため、実行されるmemset可能性がある追加のチェックを実行する必要があります。それでも、memsetメモリのゼロ化に絶対に使用しない理由とは限りません。 bzeroは非推奨と見なされ、さらに標準のC関数ではありません。マニュアルによると、この理由のためにmemset推奨されbzeroます。では、なぜそれbzero以上に使いたいのでしょうmemsetか?効率を上げるためだけですか、それともそれ以上ですか?同様に、それが新しいプログラムにとって事実上好ましいオプションになっmemsetてbzeroいることの利点は何ですか?