LinuxのC言語:構造

1.宣言と定義された構造

構造:変数データの異なる種類のコレクション。

(最も一般的に使用される)最初の定義方法:

#include<stdio.h>
struct weapon{
	char name[20];
	int atk;
	int price;
};//一定别忘了这个冒号;
int main{
	struct weapon weapon_1={"weapon_name",100,200};
	return 0;
}

第二は以下のように定義されています。

#include<stdio.h>
struct weapon{
	char name[20];
	int atk;
	int price;
}weapon_1; //相当于定义了一个全局变量,变量的类型是struct weapon,变量的名称是weapon_1;
int main{
	return 0}

この構造が明確に書かれていない、メンテナンスプログラムを助長されていません。

第三の定義方法:

struct{
	char name[20];
	int atk;
	int price;
}waapon_1;

このような書き込みは、他の構造体変数名を定義することはできません。


2.初期化構造および参照

初期設定ではと一般的な構造を引用しました:

struct weapon weapon_1={"weapon_name",100,200};
printf("%s\n%d\n",weapon_1.name,++weapon_1.price);

構造および参照の配列を初期化します。

struct weapon weapon_2[2]={{"weapon_name1",100,50},{"weapon_name2",100,200}};//里面的花括号也可以不加;
printf("%s\n%d\n",weapon_2[0].name,weapon_2[1].atk);


3.構造体ポインタ

変数のポインタを構造:

struct weapon* w;
w=&weapon_1;
printf("name =%s\nname =%s\n",(*w).name,w->name);//same result;

構造体へのポインタの配列変数:

struct weapon* p;
p = weapon_2;
printf("%s\n",p->name);

p++;// equal weapon_2 +1 指向weapon_2[1];
printf("%s\n",p->name);
公開された30元の記事 ウォン称賛36 ビュー684

おすすめ

転載: blog.csdn.net/qq_42745340/article/details/103953624