
A 回答 (4件)
- 最新から表示
- 回答順に表示
No.4
- 回答日時:
JIS X3010:2003では、6.7 宣言において、
意味規則 宣言は, 幾つかの識別子の解釈及び属性を指定する。識別子の定義(definition)とは, 宣言のうち次のものをいう。
- オブジェクトに対しては, そのオブジェクトの記憶域を確保する宣言
- 関数に対しては, 関数本体を含む宣言
- 列挙定数又は型定義名に対しては, その識別子の(唯一の)宣言
と規定されています。
> int a; ←これは変数定義
> extern int a; ←これは変数(extern)宣言
後者はあっています。
前者は文脈によって解釈が変わります。
ファイル有効範囲に前者の記述が現れた場合、それは「仮定義」になります。同じファイル有効範囲に、初期化子または記憶クラス指定子を伴う宣言が現れると、そちらが本当な定義になります。
No.3
- 回答日時:
a function declaration with no function body.
declare されたものはどこかで詳細に define されて居なければならない。
というかんじだから良いとおもいますよ。
No.2
- 回答日時:
>・宣言っていうのは、今からこの変数を使いますよってことで。
>・定義っていうのは、実際に変数の領域をわりあてるってイメージなんですけど・
そのとおりです。
変数の定義は、当該変数の領域を確保する、という意味です。
変数の宣言は、どこか別の場所で定義した変数をそこで使う、という意味です。
したがいまして、宣言の中に定義を含むという#1さんの見解は逆です。
定義の中に宣言を含みます。
No.1
- 回答日時:
c言語には、変数の型を定義する方法として、typedef と言うのが用意されていますよ。
c言語では、
・変数の宣言
と言うと、例えば今から a と言う変数を使いますよ。
と指示します。
・変数の定義
と言うと、変数がどんなものであるのかと言う事を指示する
ものだと思われます。
ですから、変数の宣言は、変数の型も指定していると思われますから、
変数の定義も含まれていると思われます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
long型の定数の末尾にLを付ける...
-
【#define】 defineで定義した...
-
C++/CLIでネイティブの構造体を...
-
Arduinoのプログラムについて
-
C#でオセロを作っているのです...
-
64bit → 32bit型へのキャスト
-
構造体の要素すべてに対する四...
-
DWORDの実際の型は何でしょうか
-
C++でboolにintの値を代入する...
-
最早開始時間と最遅完了時刻を...
-
【C++】関数ポインタの使い方
-
既定のコンストラクタがありま...
-
Aの値からBの値を除するとは??
-
「Aに対するBの割合」と「Aに対...
-
信頼区間の1.96や1.65ってどこ...
-
a^2の√=a が成り立たない場合
-
VB6.0での小数点の扱いについて
-
配列をnビットシフトする
-
数学 一次関数 関数 y=-3/4x+k(...
-
c languageで 簡単な質問があ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
main.c:7:43: warning: implici...
-
long型の定数の末尾にLを付ける...
-
DWORDの実際の型は何でしょうか
-
visualstudio C# テキストボッ...
-
2重定義って??
-
C++のfor文について
-
変数の型を定義しなかった場合...
-
ハンドルされていない例外が発...
-
intとINTの違いは?
-
C++でboolにintの値を代入する...
-
構造体の要素すべてに対する四...
-
プログラムの中で別のmainを呼...
-
エラー「invalid conversion fr...
-
GCCで暗黙の型変換の警告を出し...
-
【#define】 defineで定義した...
-
sshdログの意味
-
DDVによるメッセージの変更
-
typedef enumの使い方を教えて...
-
構造体を生成時にわざわざ初期...
-
DLLでLIBファイルが作成されない
おすすめ情報