• ベストアンサー

VisualC++6.0でhugeモデルを使いたいのですが

学校でプログラミングの勉強しているのですが、音声データを読み込むためにhugeというのを使えと言われました。 例を言うと short int huge *pitch; short huge *x; といったようにように定義しているのですがコンパイルすると「非標準の拡張機能が使用されています : 'huge' は互換性のために残されているキーワードです。」というエラーが出てしまいます。 どういったエラーの処置が必要なのでしょうか?

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

  • ベストアンサー
  • MrBan
  • ベストアンサー率53% (331/615)
回答No.1

hugeは言語標準でもないし、あくまで古いコード用だから使わない方がいいよ、ということです。 MS-DOS時代のコンパイラならいざ知らず、 昨今WindowsでVC6だとhugeとかfarとかの指定は不要です。 「使え」と言った人(本?)がかなり古いのではないでしょうか。

その他の回答 (2)

  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.3

hugeは VC++6.0では使いません VC++6.0は 32ビットモードのアプリしか作成できないからです hugeなどがあるのは16ビットアプリを作成するC/C++コンパイラです メモリーモデルついても Win32では Small/Tiny/Largeなどはありませんよ 学校で使われているコンパイラ VC++6.0なのですか?

  • phoenix343
  • ベストアンサー率15% (296/1946)
回答No.2

昔の8ビット、16ビットCPUだった時代はプログラムが扱うデータなどの大きさに応じて、スモール、ラージ、ヒュージ、などというモデルがありました。 中でもヒュージモデルは一番大きなデータなどが扱えました。またそれだけでかい処理が書けたのです。 今は32ビットCPUや64ビットCPUが普通に出回っている時代で、もう最初からヒュージモデルがデフォルトになっています。だから古いキーワードですという警告なのです。 まあ警告なのでほっといてもいいのですが、個人的に言えばhugeなんて指定しなくてもいいと思いますよ。教えてる先生が知らないだけです。