![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
ご質問はprintf ( "%sは: %f\n", ptr, PI );行に於いて、"PI"はマクロをそのまま指定しているのに、何故ptrはマクロを変数に置き換えているか...だと思われます。
そこで幾つか実験をしてみました。
●char *ptr = CIRCLE_RATIO;
| | |
| | |
printf ( "%sは: %f\n", ptr, PI );
●char ptr [] = CIRCLE_RATIO;
| | |
| | |
printf ( "%sは: %f\n", ptr, PI );
上の2つの例は等価と思われ、どちらでも構わないと思われます。但し、私が使用しているコンパイラGNU Cではどちらも正常にコンパイルできますが、GNU g++では下の例だけがコンパイルできます。 つまりC++では最初の例は通らないことを考慮し、C言語だと言っても一応習慣として下の例をご使用になることをお勧めします。
さて...
●printf ( "%sは: %f\n", CIRCLE_RATIO, PI );
も正常にコンパイルと実行ができました。ソースの作者が何故そうしたかは私にも推測できません。きっと気持ち悪かったのではないでしょうか。
char *ptr ...と宣言することで、これが『文字列なんだ』ということを明確にしたかったのではないでしょうか。でもそれは単なる個人の習慣でしかないですよね...
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- モニター・ディスプレイ Windows11のポインターのデザイン 1 2023/06/06 18:19
- Chrome(クローム) PCから郵便IDでポインターが矢印のままログインできない 1 2022/03/25 16:44
- Windows 10 パソコンのシャットダウン時の現象 7 2022/06/04 15:35
- その他(パソコン・スマホ・電化製品) ノートPCの画面がせまくなってしまいました。 3 2022/04/23 18:47
- C言語・C++・C# C言語の問題です。 1 2021/12/22 02:57
- プラモデル・鉄道模型・模型製作 ハッシェとかディアゴスティーニの商品 4 2022/07/06 08:54
- マウス・キーボード マウス待ち砂時計または表示なしに変更 2 2022/09/19 09:58
- モニター・ディスプレイ インプットダイレクター 4 2022/06/09 09:50
- 英語 英語の歴史 1 2021/12/24 22:58
- Excel(エクセル) エクセルのマクロを教えてください。 1 2022/03/30 09:29
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
C#でTreeViewのCheckBoxのサイ...
-
UART通信の取説で,left floati...
-
バッチファイルで以下のような...
-
PC画面を録画するプログラムでd...
-
逆コンパイルと逆アセンブルの...
-
C++6.0でのresource.hについて
-
c言語の問題の説明、各所ごとに
-
パソコン
-
コンソールアプリを作成するの...
-
C#でログファイルにファイルパ...
-
C言語 列挙型(enum型)変数について
-
int16_t の _t は何?
-
Windows Formアプリからコンソ...
-
大量のデータを読み込んで表示...
-
関数ポインタの高速化のメリット
-
プログラムの実行時に'<'でリダ...
-
C言語について。
-
プログラミングでArduinoのc++...
-
VisualStudio2022でC言語プログ...
-
終端記号、非終端記号とは
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
pythonにCでのexternはありますか
-
チェックボックスのvalue値の取...
-
VB2010でラベルに文字を結合したい
-
VB2010での連立方程式の計算
-
なぜかわかりませんscanf()の戻...
-
UWSCにおける変数の扱い方
-
CGIで暗号化複合化
-
c言語、マクロについて
-
配列へのポインタの代入
-
$template->output();の時に ...
-
はじめての動画像処理
-
perlのgrepでmyを付けた場合と...
-
高校数学のベーシック
-
ポインター引数の関数でコンパ...
-
10Mバイトて文字数に すると何...
-
エクセルシート名の制限を変更...
-
UTF-8で5~6バイトになる文字コ...
-
char str[256]の256の意味は?
-
「1TB」のHDDに日本語は何字入...
-
Excel VBA メール作成について ...
おすすめ情報