C言語関係掲示板

過去ログ

No.193.const double と #define の違い


No.1218

const double と #define の違い
投稿者---さと(2002/03/07 22:42:50)


 こんばんわ。いつもお世話になっています。
林さんのC言語シニア編で、
const 修飾子について、勉強していておもったのですが、
pai を定義するときに、

#define pai 3.14159

と定義するのと、

const double pai=3.14159;

と定義するには、どちらがいいのでしょうか?
処理時間などの面で、何か違うのでしょうか?

違いがわからないので、教えてくださると助かります。
では、失礼します。

No.1219

Re:const double と #define の違い
投稿者---kikk(2002/03/08 00:35:03)


ども。


C言語では定数の宣言は#defineを使います。また、constの機能は、その名前
の意味とはちがって、その変数に対する書き込み禁止を指定します。
このような使い方をした場合の処理時間の差はあるかないかわからない
くらい(場合によってはないかも)ですが、見た感じでは定数として使いたい
ようなので、#defineを使ったほうが意図を素直に記述することになるので
よいかと。


なお、πならば処理系によってはmath.hあたりでPIとかM_PIという名前で
#defineされていることがあります。math.hを調べてみてください。たしか
VCには無かったような気がします。移植性を気にしなけければ、これらを
つかうのもいいでしょう。


では。

No.1223

Re:const double と #define の違い
投稿者---さと(2002/03/08 16:25:40)


こんにちわ。レスありがとうございます。
基本的に、const は、変数への禁止を指定してるだけなのですね。
どうもありがとうございました。プログラムが、見易いように、
#define で、やりたいと思います。

 では、失礼します。

戻る


「初心者のためのポイント学習C言語」 Last modified:2002.05.14
Copyright(c) 2000-2002 TOMOJI All Rights Reserved