C#中的变量类型(值类型、引用类型)
C#中的变量类型:
值类型:值类型直接存储的是变量的值,变量空间在栈上分配,分配速度比较快。给变量赋值时需注意变量类型的取值范围,给变量赋不合理的值会导致编译器报错。布尔类型的变量只有两种可选择的值true/false,布尔值的默认值是false。
- 整型:sbyte、short、int、long、byte、ushort、uint、ulong
- 浮点型:float 、double、decimal
小数默认为double类型,若需指定小数值的类型则可以在小数后加f或F,如1.234f或1.234F表示该值为float类型,如2.345d或2.345D表示该值为double类型。
需要注意浮点类型中的特殊类型decimal类型,该类型一般在货币计算等需要高精度数据的场合中使用。
float 、double、decimal的对比:
float 有效数字7位,范围bai ±1.5 × 10E−45 to ±3.4 × 10E38
double 有效数字15/16 位,范围 ±5.0 × 10 E−324 to ±1.7 × 10E308
decimal 有效数字 28/29 位,范围 ±1.0 × 10E−28 to ±7.9 × 10E28
1)表示数的范围 decimal<float<double,其中decimal表示数的范围最小而不是最大
2)表示数的精度float<double<decimal,其中decimal表示的数的精度最高
- 字符型:char
- 布尔型:bool
布尔类型的变量只有两种可选择的值true/false,布尔值的默认值是false。
- 结构类型:struct
- 枚举类型:enum
引用类型:引用类型存储对值的引用,class、interface、delegate、object、string、Array
C#中预定义的引用类型有两种,为object和string类型。
- object类
object和System.Object等价,object类是所有类和变量类型的基类,在定义类时会自动继承object类,因此定义类时后面的从object继承的标识可以省略。
- string类
需要注意的是:string类型是一种特殊的引用类型,string类型变量的值一旦初始化就不能再改变。因此,下图中str1 = "ASP.NET"实际上并不是将之前定义的str1的值修改为"ASP.NET",而是重新生成了一个对象,将该对象的值赋值为"ASP.NET"。
C#中的变量类型(值类型、引用类型)相关推荐
- [你必须知道的.NET]第九回:品味类型---值类型与引用类型(中)-规则无边
发布日期:2007.5.28 作者:Anytao ©2007 Anytao.com ,原创作品,转贴请注明作者和出处. 接上回[第八回:品味类型---值类型与引用类型(上)-内存有理]的探讨,继续我们 ...
- 第八回:品味类型---值类型与引用类型(上)-内存有理
第八回:品味类型---值类型与引用类型(上)-内存有理 http://www.cnblogs.com/anytao/archive/2007/05/23/must_net_08.html 发布日期:2 ...
- [你必须知道的.NET] 第八回:品味类型---值类型与引用类型(上)-内存有理
本文将介绍以下内容: 类型的基本概念 值类型深入 引用类型深入 值类型与引用类型的比较及应用 1. 引言 买了新本本,忙了好几天系统,终于开始了对值类型和引用类型做个全面的讲述了,本系列开篇之时就是因 ...
- 【转】[你必须知道的.NET] 第八回:品味类型---值类型与引用类型(上)-内存有理...
引用自:http://www.cnblogs.com/anytao/category/155694.html 作者:Anytao 本文将介绍以下内容: 类型的基本概念 值类型深入 引用类型深入 值类型 ...
- [你必须知道的.NET]第十回:品味类型---值类型与引用类型(下)-应用征途
本文将介绍以下内容: 类型的基本概念 值类型深入 引用类型深入 值类型与引用类型的比较及应用 [下载]:[类型示例代码] 1. 引言 值类型与引用类型的话题经过了两个回合([第八回:品味类型---值类 ...
- 决定c++语言中函数的返回值类型的是,全国2009年10月高等教育自学考试C++程序设计试题及部分参考答案...
全国2009年10月高等教育自学考试 C++程序设计试题 课程代码:04737 一.单项选择题(本大题共20小题,每小题1分,共20分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码 ...
- python中的变量是动态类型的什么意思_Python零基础入门(一):对Python的简单认识...
点击蓝字 关注浅韵 一起划水 写在前面 期末考试告一段落之后,这个公众号又活了. 漫长的假期,想玩也是肯定的,但是发现自己想学的东西也很多,想写的东西也很多,所以给自己来了一个假期整活计划. 在这个假 ...
- python布尔型变量错误的赋值_Python中布尔变量的值为( )
[单选题]x 的 y 次方(xy) 以下表达式正确的是________ [多选题]以下关于 Python 字符串的描述中,正确的是( ) [多选题]下列表达式的值为False的是( ) [其它]返回 ...
- Linux下sed命令替换配置文件中某个变量的值(改变包含字符的一行的值)之二——只改变第一出现的那一行
一.背景 在之前的文章中有介绍过<Linux下sed命令替换配置文件中某个变量的值(改变包含字符的一行的值)> 但是这种方法存在一定的问题,就是假如某个变量在一个文件中出现两次,却只想更改 ...
- Linux下sed命令替换配置文件中某个变量的值(改变包含字符的一行的值)
背景 项目初期,创业初期,对于部署还停留在比较简单的时期等等...部署代码需要脚本部署,那么不同环境部署代码的配置也不一样,同一个环境下,多个节点的配置不一样.同一个节点中,多个服务会用到同一个配置项 ...
最新文章
- Matlab与线性代数 -- 方阵的行列式
- 局域网与网络工程课堂笔记(1)(2)
- Python中的pandas模块学习
- 验证码识别技术(1) - 边缘检测
- Javascript Symbol 隐匿的未来之星
- 编程式事务与声明式事务
- linux java获取文件创建时间_Linux查看文件的最初创建时间
- C++课程上 有关“指针” 的小结
- 前端开发知识点解答-VUE-面试
- python3.5------用户的三次验证
- C语言程序设计中十全十美,21世纪高校计算机应用技术系列规划教材 C语言程序设计-潭浩强主编 林小茶编著.pdf...
- 基于SSM的知识库管理系统
- 致远OA单点登陆到第三方系统(零代码实现)
- Codeforces Round #727 (Div. 2)_B. Love Song(前缀和)
- python中全局变量global的使用
- GitLab使用CAS服务进行单点登录配置
- 关于VMWare中的vmem文件
- 定义c语言字符串的三种方法
- 数据库SQL---SQL语言的功能
- CodeForces 3-B Lorry