
No.2ベストアンサー
- 回答日時:
言葉が足りなかった様に思いましたので補足です。
先程の回答の中で述べた、「constを定数として扱うのはC++の流儀」というのはCではconstが使えないと言うことではありません。
ただ、Cの場合constを用いた場合あくまで変更できない変数という扱いになります。(つまり定数式でなければならない配列定義時の要素数等には使えない)
これに対しC++ではdefineの機能の置き換えとしてconstを推奨していますので定数として扱われる様になったと言うことです。
同様にマクロによるバグを減らす為inline関数の使用も推奨しています。
C++の流儀としてはdefineはあまり使わない方向ということでしょうか。
この回答へのお礼
お礼日時:2001/08/29 16:00
具体的なご回答ありがとうございました。
例のエラーはなくなり、ようやく実行できました。
ちなみに、inline関数を推奨とのことですが、どのように使ったよいのでしょうか。時間がありましたら、お願いします。
No.1
- 回答日時:
Cとしてコンパイルするのならdefineを用いるのが適切かもしれません。
constを定数として扱うのはC++の流儀だった様な気がします。
で、配列の宣言時には要素数は定数で指定しなければいけないよ、と言われているのではないでしょうか。
とりあえず
#define N 2
に変更するというのは駄目ですか?
#VC++のオプション設定の中にコンパイルルールをある程度変更できる部分が
#あったような気がするのですが・・・。
#記憶違いかも・・・。(^_^;
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
” OS ビルド ” の意味が分か...
-
ビルドとリビルドの違いを教え...
-
「fatal error C1189」を回避す...
-
エクセルVBAではRound...
-
クリティカルエラー Expressio...
-
sys/types.hの必要性について
-
gcc で シフトJISを通す方法を...
-
マクロ コンパイルがグレーバック
-
[c++] <pthread.h>がinclude で...
-
ILSpyで、デコンパイルできない。
-
セミコロンについて
-
【VC++6.0(MFC)】警告「LINK : ...
-
cc hello.cってやっても、、、
-
コンパイルできない・・。(VC+...
-
VB6で開発中…標準モジュール間...
-
asp.net
-
他のLinuxでも動くa.outの作り方
-
PRO*C コンパイルエラー
-
Visual C++ 6.0 で作成したプロ...
-
複数のサブディレクトリを一緒...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
” OS ビルド ” の意味が分か...
-
Makefile作成時の拡張子.oとは?
-
VBAを何回も作り直して、容量が...
-
エクセルVBAではRound...
-
マクロ コンパイルがグレーバック
-
C言語でヘッダファイルにグロー...
-
ILSpyで、デコンパイルできない。
-
【VC++6.0(MFC)】警告「LINK : ...
-
「fatal error C1189」を回避す...
-
1 つ以上の複数回定義されてい...
-
クリティカルエラー Expressio...
-
動的な変数名のつけ方について
-
C言語のコンパイルができません
-
C++コンパイル時に『 C1083: in...
-
セミコロンについて
-
他のLinuxでも動くa.outの作り方
-
includeと#include
-
ビルドとリビルドの違いを教え...
-
コンパイルエラー:ユーザ定義...
-
MFCのエラーについて
おすすめ情報