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里面的变量名称=值;
10-23C#基础--结构体的更多相关文章
- go 基础 结构体
结构体是类型中带有成员的复合类型.go语言使用结构体和结构体成员来描述真实世界的实体和实体对应的各种属性. go语言中的类型可以被实例化,使用new和&构造类型实例的类型是类型的指针. 结构体 ...
- C#语言基础——结构体和枚举类型
结构体和枚举类型 一.结构体(struct) 结构类型是用户自己定义的一种类型,它是由其他类型组合而成的,可包含构造函数.常数.字段.方法.属性.索引器.运算符.事件和嵌套类型的值类型.结构在几个重要 ...
- C基础--结构体
C语言,结构体语法: 1.定义结构体类型: struct 结构体名称 { 成员类型 成员名称1; 成员类型 成员名称2; ... }; 例:struct Date { int year ; int m ...
- C基础--结构体成员初始化方式
之前在linux内核代码中看到结构体成员成员初始化使用类似于.owner = THIS_MODULE, 不太见过,于是搜了个博客,分享下: 转自:http://www.cnblogs.com/Anke ...
- C语言基础--结构体对齐,位域,联合体
结构体对齐 1--结构体对齐的原因与意义 许多计算机系统对基本数据类型的可允许地址做出了一些限制,要求某种类型的对象的地址必须是某个值K(通常是2,4,8)的倍数,而这个k则被称为该数据类型的对齐模数 ...
- C#基础——结构体
集合:数组:同一类型,固定长度集合:不同类型,不固定长度 要使用集合,必须先引用命名空间:using System.Collections; 定义:ArrayList arr = new ArrayL ...
- OC基础--结构体 枚举做类成员属性
结构体 枚举作类的成员属性: 定义一个学生类 性别 -- 枚举 生日 入学日期 毕业日期 -- 结构体 代码示例: 声明文件 Student.h: #import <Foundation ...
- 2017-3-2 C#基础 结构体
1. 结构体:用户自定义类型定义位置:定义在Main函数的外面,类的里面 定义格式:struct 自定义名字{ public 数据类型 名字; public 数据类型 名字; ... ...} 声明实 ...
- 数据结构基础——结构体struct及类型别名typedef的使用
一.结构体的创建 在C语言中,实现数据结构的一种常用方法便是使用结构体(structure)其示例代码如下: struct stu { int num; char ch; }; struct表示创建结 ...
- swift 学习- 10 -- 类和结构体
// '类和结构体' 是人们构建代码所使用的一种通用且灵活的构造体, 我们可以使用完全相同的语法规则来为 '类和结构体' 定义属性 (变量 和 常量) 和添加方法, 从而扩展 类和结构体 的功能 // ...
随机推荐
- 机器学习之K-近邻(KNN)算法
一 . K-近邻算法(KNN)概述 最简单最初级的分类器是将全部的训练数据所对应的类别都记录下来,当测试对象的属性和某个训练对象的属性完全匹配时,便可以对其进行分类.但是怎么可能所有测试对象都会找到 ...
- spring boot: 组合注解与元注解
package ch2.annotation; //target/elementType用来设定注解的使用范围 import java.lang.annotation.ElementType; imp ...
- memset函数用法及注意事项
头文件 #include<cstring>// or #include<memory.h> ------------------------------------------ ...
- 如果看看机器ip和域名ip
1.如果查看一个机器IP ifconfig或hostname -i //linux ipconfig //windows 2.查看一个域名对应ip ping www.baidu.com 下面会显示域名 ...
- Switching from Redhat Linux to Oracle Linux in about 5,000 easy steps
Wayback When I remember being at Oracle Open World when Larry Ellison unveiled Oracle Enterprise Lin ...
- LeetCode OJ:Triangle(三角形)
Given a triangle, find the minimum path sum from top to bottom. Each step you may move to adjacent n ...
- C#多线程操作
static void Main(string[] args) { Thread thread = Thread.CurrentThread; thread.Name = "Main Thr ...
- codeforces D. Area of Two Circles' Intersection 计算几何
D. Area of Two Circles' Intersection time limit per test 2 seconds memory limit per test 256 megabyt ...
- LeetCode Can Place Flowers
原题链接在这里:https://leetcode.com/problems/can-place-flowers/description/ 题目: Suppose you have a long flo ...
- I would I were a careless child
I would I were a careless child by George Gordon Byron 1 I would I were a careless child, still dwel ...