• 締切済み

new、memset()、エラー

new は何型を返すんですか? new の定義が詳しく書いてあるサイトを紹介してください。 new して確保した領域のメモリは全て0で初期化されますか? それが分からなかったからmemset()で0にしてみたら、 memset()の部分で実行エラーでした。 new の領域をmemset()してはいけないんですか? #include <iostream.h> main(){ char *buf = new char[100]; memset(buf, 0, 100); delete []buf; }

みんなの回答

  • taka_tetsu
  • ベストアンサー率65% (1020/1553)
回答No.2

>>#include <memory.h> >>にしてみて下さい。 >しません。 ??? memory.hかstring.hのヘッダ追加しないとコンパイル通らないはずなんですが・・・ もし、ワーニングだけで、実行ファイルができてしまっているのであれば、単純に関数の呼び出しに失敗して落ちているだけです。 素直にヘッダを追加しましょう。 >new は何型を返すんですか? 指定したクラスのポインタを返します。 >new して確保した領域のメモリは全て0で初期化されますか? されません。

  • uyama33
  • ベストアンサー率30% (137/450)
回答No.1

#include <memory.h> にしてみて下さい。

A__
質問者

補足

しません。

関連するQ&A