c++構造体を定義する4つの方法
2099 ワード
構造体は異なるデータの烈性を統合して新しいタイプを構成し、データベースの記録に相当します.例えば、学生構造体は、学号、名前などの情報を統合しています.構造体の利点は、これらの情報を全体的に管理することができ、オブジェクト内のクラス向けの属性のように、構造体があれば、より抽象的にカテゴリを記述することができ、個人感覚クラスは構造体から発展したものであり、c/c++では、構造体が宣言する関鍵字はstructである.
構文:
最初の構文表現
struct構造体名{データ型member 1;データ型member 2; };
2番目の構文表現
typedef struct構造体名{データ型member 1;データ型member 2;}構造体名別名;この方法は,構造体変数を宣言する際に2つの方法がある.
1つ目:struct構造体名構造体変数名2つ目:構造体名別名構造体変数名
理由:typedefキーワードが使用されています.このキーワードの役割は、データ型の別名を宣言し、ユーザーのプログラミングを容易にすることです.そのため、ここで使用すると、構造体名別名はstruct構造体名に相当します.構造体変数を宣言するときはstructを書く必要はありません.
第3の方法
struct構造体名{データ型member 1;データ型member 2;}構造体変数
第4の態様struct{ データ型member 1; データ型member 2;}構造体変数名;
この方法は匿名構造体であり、定義時に2つの構造体変数を同時に宣言するが、その構造体の識別子が分からないため、識別子で変数を宣言することはできない.
構文:
最初の構文表現
struct構造体名{データ型member 1;データ型member 2; };
#include
using namespace std;
struct Student{
int sNo;
char name[10];
};
int main(){
struct Student stu;
//stu.name="zhangsan";//
strcpy(stu.name, "zhangsan");
stu.sNo=18;
cout<
2番目の構文表現
typedef struct構造体名{データ型member 1;データ型member 2;}構造体名別名;この方法は,構造体変数を宣言する際に2つの方法がある.
1つ目:struct構造体名構造体変数名2つ目:構造体名別名構造体変数名
理由:typedefキーワードが使用されています.このキーワードの役割は、データ型の別名を宣言し、ユーザーのプログラミングを容易にすることです.そのため、ここで使用すると、構造体名別名はstruct構造体名に相当します.構造体変数を宣言するときはstructを書く必要はありません.
#include
using namespace std;
typedef struct Student{
int sNo;
char name[10];
} stud;
int main(){
struct Student stu;//
stud stu1;// , stu1, struct
//stu.name="zhangsan";//
strcpy(stu.name, "zhangsan");
stu.sNo=18;
stu1.sNo=19;
cout<
第3の方法
struct構造体名{データ型member 1;データ型member 2;}構造体変数
#include
using namespace std;
struct Student{
int sNo;
char name[10];
} stu;// stu
int main(){
//struct Student stu;// ,
//stud stu1;/// ,
//stu.name="zhangsan";//
strcpy(stu.name, "zhangsan");
stu.sNo=18;
cout<
第4の態様struct{ データ型member 1; データ型member 2;}構造体変数名;
この方法は匿名構造体であり、定義時に2つの構造体変数を同時に宣言するが、その構造体の識別子が分からないため、識別子で変数を宣言することはできない.
#include
using namespace std;
struct {
int sNo;
char name[10];
} stu1,stu2;// 2 stu1,stu2
int main(){
strcpy(stu1.name, "zhangsan");
stu1.sNo=18;
stu2.sNo=8;
cout<