ページ 1 / 1
定義
Posted: 2009年2月01日(日) 15:56
by notta
定義ってどうやって作るんですか、教えてください。
Re:定義
Posted: 2009年2月01日(日) 16:01
by Dixq (管理人)
定義は
#define
でかけますが、そういう定義でしょうか?
まず、何が目的で、何を必要としているか、規約にかいてあるように詳しく教えて下さい。
また、
http://www.google.co.jp/search?hl=ja&q= ... =&aq=f&oq=が、
これでは解決しませんか?
質問を規約を守って丁寧にすることで、良い回答が集まると思います。
Re:定義
Posted: 2009年2月02日(月) 10:47
by TOMONORI
宣言と定義の定義だとすると、関数を例として、
// 宣言
int func(int num);
// 定義
int func(int num)
{
// 動作の記述
return num * num;
}
// 任意の場所で利用する
int main()
{
int i;
int ii;
i = 2;
ii = func(i); // 利用
return 0;
}
Re:定義
Posted: 2009年2月02日(月) 12:28
by たかぎ
C言語における「定義」は、JIS X3010:2003では、6.7 宣言によると...
意味規則 宣言は, 幾つかの識別子の解釈及び属性を指定する。識別子の定義(definition)とは, 宣言のうち次のものをいう。
- オブジェクトに対しては, そのオブジェクトの記憶域を確保する宣言
- 関数に対しては, 関数本体を含む宣言
- 列挙定数又は型定義名に対しては, その識別子の(唯一の)宣言
となっています。
一方、#define前処理指令によるものは「マクロ定義」です。
また、typedef指定子によるものは「型定義」です。
さらに、
struct A;
union B;
enum C;
が構造体・共用体・列挙体の宣言であるのに対して、
struct A { int a; };
union B { int b; };
enum C { c };
は構造体・共用体・列挙体の定義になります。
最後に、ややこしい概念として「仮定義」というものがあります。
これについては自分で調べてみてください。
Re:定義
Posted: 2009年2月05日(木) 23:50
by notta
ありがとうございます。 頑張っていきたいと思います。