深入C#数据类型
2018-06-18 02:14:59来源:未知 阅读 ()
值类型和引用类型
常用的数据类型
整形 int 浮点型 foalt 双精度浮点型 double 字符串 string 布尔 bool 枚举 enum
值类型
值类型继承与System.ValueType类,每个值类型的对象都有一个独立的内存区域用于保存自己的值,值类型数据所在的内存区域称为栈(Stack)。只要在代码中修改它,就会在它的内存区域内保存这个值。
引用类型
引用类型继承与System.Object类,在C#中引用类型主要包括数组、类和接口等。
细分值类型和引用类型
值类型:
基本数据类型:
整形 int 长整形 long 浮点型 foalt 双精度浮点型 double 字符型 char 布尔型 bool
枚举类型: enum
结构类型: struct
引用类型:
类:
基类 System.Object 字符串 string 自定义类 class
接口:interface
数组:int【】,string【】
结构
结构定义
访问修饰符 sturct 结构名 { //结构体 }
结构的特点:
-
机构中可以有字段也可以有方法
- 定义时结构内的字段不能被赋初值
- 结构的使用
- 结构可以不用new 直接定义结构的对象即可
- 声明结构的对象后必须给结构赋初值
-
demo:
public struct student {public int id/;IDpublic int age //年龄
public void sayhi() { Console.WriteLine("学号:"+id+"年龄:"+age) } } //结构定义
public static void Main(string[] args) { student stu; stu.id=1234; stu.age=18; stu.sayhi(); } //结构调用
值方式参数传递
值方式参数传递时,参数是值类型则在调用后值不变,是引用类型时值可变
引用方式参数传递
引用方式参数传递时,不管参数时值类型还是引用类型调用后值都可变
demo:
值方式传递值类型参数
public void addage(int age) { age++; } static void Main(string[] args) { stu sb = new stu(); int num = 3; Console.WriteLine(num); sb.addage(num); Console.WriteLine(num); }
结果:
值方式传递引用类型参数
public class stu { public int age; public void addage(stu student) { student.age++; } } public static void Main(string[] args) { stu sb = new stu(); sb.age= 3; Console.WriteLine(sb.age); sb.addage(sb); Console.WriteLine(sb.age); }
结果:
引用方式传递值类型参数
public void addage( ref int age) { age++; } static void Main(string[] args) { stu sb = new stu(); int num = 3; Console.WriteLine(num); sb.addage(ref num); Console.WriteLine(num); }
结果:
引用方式传递引用类型参数
public class stu { public int age; public void addage( ref stu student) { student.age++; } } public static void Main(string[] args) { stu sb = new stu(); sb.age= 3; Console.WriteLine(sb.age); sb.addage( ref sb); Console.WriteLine(sb.age); }
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- C++ 自动转换和强制类型转换(用户自定义类类型) 2020-06-10
- SWIG 3 中文手册——11. 类型映射 2020-06-07
- 关于各种不同开发语言之间数据加密方法(DES,RSA等)的互通的 2020-06-07
- Visual Studio 2019提示不能将const char*类型的值分配到con 2020-06-07
- C++ 共用体 2020-06-05
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash