スポンサードリンク

構造体の宣言
※#include <stdio.h>宣言は省略しております。
struct 任意の構造体名{
任意の変数宣言 任意の変数名
};
構造体宣言 例
struct zzz{
char car[50];
int nedan;
int nebiki;
};
※ヘッダは省略しております。
struct zzz dat;
strcpy(dat.car,"カローラ");
dat.nedan = 150;
dat.nebiki = 5;
またポインタを用いて指定する場合は【 -> 】アロー演算子を用います。
今から上記のサンプルをポインタと【 -> 】アロー演算子を用いたサンプルを見てみたいと思います。
サンプル
#include <stdio.h>
#include <string.h>
struct zzz{
char nm[50];
int nedan;
int nebiki;
};
int main(void)
{
struct zzz dat;
struct zzz *po = &dat;
strcpy(po->nm,"カローラ");
po->nedan=150;
po->nebiki=5;
printf("車名%s\n", po->nm);
printf("車体価格%d万\n", po->nedan);
printf("値引き%d万\n", po->nebiki);
strcpy(po->nm,"エスティマ");
po->nedan=250;
po->nebiki=10;
printf("車名%s\n", po->nm);
printf("車体価格%d万\n", po->nedan);
printf("値引き%d万\n", po->nebiki);
}
構造体名zzzを作成し、構造体変数【 struct zzz dat; 】を宣言し次に【 struct zzz *po 】ポインタ宣言し【 dat 】のアドレスをポインタに代入しています【 struct zzz *po = &dat; 】
変数だとメンバ指定の際【 . 】(ドット)を用いて指定していたのに対して、ポインタにてメンバ指定する際【 -> 】(アロー演算子)を用いている点に注意して下さい。
値の代入に付いては、構造体にて用意した変数名に代入しそれぞれ出力しております。

上記の実行結果

上記と同じサンプルですが整数型【 int 】でのサンプルも念の為。
関数呼び出し側の点を見て下さいね。
簡単ですが説明は以上です。
あかかげまるのC言語入門はこちら!!
スポンサードリンクパソコン勉強部屋 | パソコン勉強部屋2 | ADSL勉強部屋 | メール勉強部屋 | LAN勉強部屋 | ホームページ勉強部屋 | 自宅サーバー勉強部屋 | お役立ちソフトの部屋 | C言語勉強 | 無料ゲーム | 無料セキュリティー | Linuxのコーナー | あかかげまる | オンライン通販 | ショップブランドパソコン | DVDとCD編集ツール |
▲ページトップへ