10-23C#基础--结构体
结构体:
1、定义:封装小型相关变量组,里面可以放一系列的变量;
就是一个变量组,将一组变量放在一起,结构体一般定义在Main函数上面,位于Class下面,作为一个类;一般情况Struct定义在Main函数前面,Main函数里面的地方都可以使用,参数前面加上public代表公用变量。
格式:
public struct jiegouti
例:
public struct jiegouti
{
public int fenshu;//定义一组变量
public string name;
public string kecheng;
public int[]shuzu;
public shuxing sx;//代表一个shuxing(相当于一个数组)结构体变量组;
}
//定义一个shuxing结构体
public struct shuxing
{
public int tizhong;
public string hunfou;
public int nianling;
}
2、用法:
在Main函数外面定义了一个名字为jiegouti类型的结构体,Main函数中使用:
static void Main(string[] args)
{
jiegouti jgt = new jiegouti();//初始化结构体,这句在Main函数里定义了一个名为jgt的jiegouti类型的结构体。
下面是为里面的每个元素赋值:结构体名+.+结构体里面的变量名称=值;
jiegouti jgt = new jiegouti();
jgt.fenshu = 95;//通过初始化结构体的名字,点出变量名来赋值取值使用
jgt.name = "小李";
jgt.kecheng = "语文";
jgt.shuzu=new int[9];
jgt.shuzu[0]=1;
赋值完成后进行打印:
Console.WriteLine(jgt.shuzu[0]);
3、结构体还可以在结构体重新新建,每初始化一次,就是一个新的结构体,里面还包含那些变量,还可以重新赋值,
jiegouti jgt2 = new jiegouti();
jgt2.name = "小王";
Console.WriteLine(jgt.name+jgt2.name);
Console.ReadLine();
4、结构体类型元素包含结构体类型
在jiegouti这个类型后面又定义了一个shuxing;
public struct jiegou
{
public string banji;
public string xingming;
public int nianling;
public double fenshu;
public string kecheng;
public shuxing sx;//这里声明了一个shuxing类型的sx,shuxing是我们定义的另一种结构体类型
}
//定义一个shuxing结构体
public struct shuxing
{
public int tizhong;
public string hunfou;
public int nianling;
那这里在赋值的时候注意它的格式:jgt+.+sx+.+sx里面的变量名称=值;