構造体struct Cube型の構造体変数cube1に同じ構造体struct Cube型の構造体変数cube2を代入してみましょう
アレサ
「int型の変数aに
a=b;
のように
int型の変数bが代入できたように
float型の変数cに
c=d;
のように
float型の変数dが代入できたように
struct Cube型の構造体変数cube1に
同じ構造体struct Cube型の
構造体変数cube2を代入してみたいと思います。
#include <stdio.h>
struct Cube{
int no;
float tate;
float yoko;
float takasa;
};
int main(void){
struct Cube cube1={1,4.0,5.0,6.0};
struct Cube cube2={2,1.0,2.0,3.0};
printf ("%d\n",cube1.no);
printf ("%f\n",cube1.tate);
printf ("%f\n",cube1.yoko);
printf ("%f\n",cube1.takasa);
cube1=cube2;
/*構造体変数cube1に構造体変数cube2を代入しています*/
printf ("%d\n",cube1.no);
printf ("%f\n",cube1.tate);
printf ("%f\n",cube1.yoko);
printf ("%f\n",cube1.takasa);
return 0;
}
コンパイル結果
1
4.000000
5.000000
6.000000
2
1.000000
2.000000
3.000000
構造体変数cube1に構造体変数cube2を代入する前は
構造体変数cube1のメンバ変数
cube1.no
cube1.tate
cube1.yoko
cube1.takasa
には
構造体変数cube1のメンバ変数を初期化する
cube1.no=1;
cube1.tate=4.000000
cube1.yoko=5.000000
cube1.takasa=6.000000
の実行より
数値データ
1
4.000000
5.000000
6.000000
が格納されていました
cube1=cube2;
をおこない
構造体変数cube1に構造体変数cube2を
代入した後は
構造体変数cube1のメンバ変数
cube1.no
cube1.tate
cube1.yoko
cube1.takasa
に格納されている値が
2
1.000000
2.000000
3.000000
と変化しています
構造体変数cube1に構造体変数cube2を代入することによって
cube1の4つのメンバ変数
に格納されている数値データが
cube2のメンバ変数
に格納されている数値データに
1度に
全部変わっているのがわかります。」
ソーラー
「これも構造体の便利なところかな。
もし構造体をつかっていなければ
立方体cube1のデータを
int no1=1;
float tate1=4.000000
float yoko1=5.000000
float takasa1=6.000000
立方体cube2のデータを
int no2=2;
float tate2=1.000000
float yoko2=2.000000
float takasa2=3.000000
と変数に格納することになります。
そして
立方体cube2のデータを
立方体cube1のデータにわたすには
立方体cube1のデータを格納している変数
no1
tate1
yoko1
takasa1
の
1つの変数ごとに
それに対応する
立方体cube2のデータを格納している変数
no2
tate2
yoko2
takasa2
を
no1= no2;
tate1=tate2;
yoko1=yoko2;
takasa1=takasa2;
と代入していかないといけないね。
この場合は変数の数が4つだったから
まだ簡単だけど
変数の数が1000個だったらとても大変だね\(^o^)/
構造体をつかえば
cube1=cube2;
ですむものね。
構造体はこんなところが便利だね」
新規登録で充実の読書を
- マイページ
- 読書の状況から作品を自動で分類して簡単に管理できる
- 小説の未読話数がひと目でわかり前回の続きから読める
- フォローしたユーザーの活動を追える
- 通知
- 小説の更新や作者の新作の情報を受け取れる
- 閲覧履歴
- 以前読んだ小説が一覧で見つけやすい
アカウントをお持ちの方はログイン
ビューワー設定
文字サイズ
背景色
フォント
組み方向
機能をオンにすると、画面の下部をタップする度に自動的にスクロールして読み進められます。
応援すると応援コメントも書けます