C 構造体 新しいページはコチラ
提供: yonewiki
(→構造体) |
(→構造体) |
||
14行: | 14行: | ||
<syntaxhighlight lang="cpp" line start="1"> | <syntaxhighlight lang="cpp" line start="1"> | ||
int main() { | int main() { | ||
+ | |||
struct stDate{ | struct stDate{ | ||
int year; | int year; | ||
19行: | 20行: | ||
int day; | int day; | ||
}; | }; | ||
+ | //これでstDateという構造体を定義したことになる。 | ||
+ | |||
stDate stDateTest;//stDateTestっていう名前でstDate構造体変数を作った。 | stDate stDateTest;//stDateTestっていう名前でstDate構造体変数を作った。 | ||
25行: | 28行: | ||
stDateTest.month = 2; | stDateTest.month = 2; | ||
stDateTest.day = 3; | stDateTest.day = 3; | ||
+ | |||
int nYear; | int nYear; | ||
nYear = stDateTest.year; //使うときも同じ | nYear = stDateTest.year; //使うときも同じ | ||
+ | |||
+ | |||
return 0; | return 0; | ||
} | } | ||
41行: | 47行: | ||
− | + | 複数の変数をひとまとめにした構造体を定義して、定義した構造体名の変数を作って利用する。構造体の定義と同時に変数を作ることもできるし、構造体の変数のポインタを使うこともできる。先に述べたように、構造体の定義の中には、複数の変数に限らず、ポインタ変数や関数、そして、構造体そのものを含めることができる。構造体の中で構造体を再帰的に保有することができる。どこかで、その再帰的な構造体の実体を作らなければ無限に再帰することになるので、再帰的に構造体を定義する場合は、構造体の中の構造体変数の実体を持たないような、終点の工夫が必要となることは言うまでもなし。もちろん再帰的ではなく、まったく別の構造体を含めて、構造体として定義することもできる。 | |
+ | |||
+ | |||
+ | という具合に… | ||
+ | |||
+ | |||
+ | 本気で使うとなるともっと難しくなっていきます。数学と一緒で基本は簡単なのに、わかったつもりで次のページをめくっていくとわからなくなるというそういう要素を含んでいるのが構造体だと思います。オレは使わないからあんまり関係ねぇとか、舐(な)めてると怪我します。 | ||