No.5ベストアンサー
- 回答日時:
> 予約語とキーワードは同義語なのでしょうか?
厳密な意味では同義ではありません。
キーワードの方が予約語よりも範囲が広いです。
例えばC言語で標準に用意されている関数があります。
これらの関数名とか変数名はキーワードではありますが予約語ではありません。
例えば、freadとかfwrite、これらの関数名は予約語ではありませんから、
プログラマが自分の関数名などに使うことが出来ます。
しかしキーワードとして重要なので、まずどこでも使ってはならない、と
コーディング規約などで定められる対象です。
「出来るコト」と「すべきコト」は違う訳です。
またコンパイルやリンクを行う時に、コンパイルオプションやリンクオプションが
あります。
これらはコーディングとは関係が無いようですが、経験上それらのキーワードを
使うと妙なエラーが生じるとことがあると思っています。
No.4
- 回答日時:
私も古い人間なので、予約語 と言った方がしっくり来ます。
(K&Rの和訳本では予約語と書いてあった気がします。)厳密には、キーワードと予約語は異なる概念の様ですが、”C言語の入門書”と記載しているので、同じ意味と思っておいても良いでしょう。
様は、言語の仕様で予約されているので、プログラムを書く時に、任意の意味で使用することが出来ない文字列ということです。
関数名や変数名に、 if とか、def とか、C言語で決まった意味を持った文字列、ということですね。
コンパイラは、文字列をひとつひとつ解読していく訳ですから、コンパイラが予約語を解読すると、予め定められた翻訳ルールに従って、プログラムを構築していきます。なので、プログラマが任意にこの予約後を使ってしまうと、コンパイラはプログラマが何をさせたいのか分からなくなってしまい、解読不能となってしまいます。
この回答への補足
ご回答ありがとうございます。
お返事遅れて申し訳ありません。
では逆に言えばユーザーが任意で名前を指定出来るトークン以外はキーワード(予約語)と解釈してよろしいでしょうか?
また私の解釈が間違っている場合は指摘をお願いいたします。
No.3
- 回答日時:
「予約語とキーワードは同義語なのでしょうか?」と質問する前に調べようとは思いませんでしたか?
この回答への補足
調べてみて分からない為質問しています。
また自分が理解したと思っても一歩間違えれば独自解釈になってしまう為、自分の考えが正しいのか確かめ為にも質問をします。
まず、この場で質問をすると言う事は一般的に多少は自分で調べたと言う前提があると思いませんか?
No.2
- 回答日時:
自分が作った関数の関数名とか、
自分が作った変数の変数名などは、自分で自由に名前が付けられます。
但し、特定のワードはC言語にとって意味があるので、自分が付ける名前には使えません。
そのようなワードを予約語とかキーワードという訳です。
returnやifやwhileなど沢山あります。
但し、return_100とか予約語に他の文字を付け足すと、予約語とは見なされません。
つまり、
int return; →これは予約語を変数名に使ったエラーとなります。
int retutn_100; →これは予約語ではないのでエラーになりません。
但し、return_100などの変数名はセンスが無い、と申し上げておきます。
あくまでも引き合いに出しただけです。
なお、c言語に限らず、殆どの言語には予約語が存在します。
この回答への補足
回答ありがとうございます。
もう一つだけお願いいたします。
回答者様が回答して下さった内容に「予約語」と言う言葉が有ります。
予約語とキーワードは同義語なのでしょうか?
No.1
- 回答日時:
あまり意識したことはないですが。
http://ja.wikipedia.org/wiki/%E3%82%AD%E3%83%BC% …
予約されているワード、つまり「変数・関数名には使えない」くらいにおもっておけば良いかも。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
unsigned long long 型のフォー...
-
ソフトの開発言語を調べる方法
-
C++Builder → Visual C++ 移植...
-
【COBOL】小さい字を大きい字へ...
-
cudaのnvccはmingwやgccでも使...
-
COBOLの論理演算子について質問...
-
COBOL計算式の中間ワーク桁数に...
-
OpenMAXというものについて、簡...
-
DB2のPL/SQLについて
-
パーサとコンパイラの違いって?
-
HP-UXのプログラムをSolaris、R...
-
未使用引数の注意文出力を回避...
-
Visual Studio フレームワーク ...
-
コンパイラについて。
-
C言語のプログラミングのソフト...
-
リリースモードとデバッグモー...
-
サイクルカウントの方法
-
<conio.h>?
-
C言語をどうしたら?
-
最初に使う変数のゼロクリアに...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
unsigned long long 型のフォー...
-
ソフトの開発言語を調べる方法
-
プログラマーに向いている人の...
-
printfなど、標準関数のソース...
-
cc と gcc の違い
-
組み込みソフト。ROM領域にデータ
-
C++Builder → Visual C++ 移植...
-
COBOLの論理演算子について質問...
-
COBOLのALPHABET...
-
VC++の/Zm オプションについて
-
リリースモードとデバッグモー...
-
C++でデスクトップGUIアプリ開...
-
PICでのI2C通信でのマスタ、ス...
-
C言語の規格
-
パーサとコンパイラの違いって?
-
void型のポインタで構造体の参照
-
VisualC++6.0でのProfessionalE...
-
OpenMAXというものについて、簡...
-
#pragmaとは
-
<conio.h>?
おすすめ情報