• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:C++での標準関数の位置は?)

C++での標準関数の位置は?

このQ&Aのポイント
  • C++で文字列操作用のクラスを作成中。
  • 追加した数値変換用のメンバでエラーが発生。
  • atoiなどの標準関数の名前空間を特定できず。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

普段C++を使ってない門外漢だけれど stdio.hでもstring.hでもなくstdlib.hってことになってるぞ? http://www.cplusplus.com/reference/clibrary/cstdlib/atoi/ #あくまでstdio.h等はC言語が前提になっているっぽい。 #名前空間stdにあるのはcstdio等を読みこんだ時。 #string.hはcstring,stdlib.hはそれぞれcstdlibと読み替えて http://ideone.com/Jq5SY うまくいったようだ。

pokapoka1980
質問者

お礼

通常の(古いCの)標準関数をインクルードすると、 グローバル名前空間に配置されるみたいです。 ::atoi()としたところコンパイルが通りました。 グローバル名前空間というものがあること自体すっかり忘れていました。 回答感謝&お手数をおかけしました。

その他の回答 (1)

回答No.2

#include <stdlib.h> を追加したらどうでしょうか

pokapoka1980
質問者

補足

すみません。記述ミスです。 実際のソースには #include <stdlib.h> が入っています。

関連するQ&A