- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
                        查看更多
                        
                    
                隐式转换-PPT教程.ppt
                    2.1.2 值类型
值类型(value type)
值类型的变量在堆栈(Stack)中直接包含其数据,每个变量都有自己的数据副本(除 ref 和 out 参数变量外)
变量之间的操作独立(互不影响)。
C# 的值类型分为:
简单类型(simple type)
枚举类型(enum type)
结构类型(struct type)
 null 的类型(nullable type)
2.1数据类型
2.1.1类型系统
通用类型系统(Common Type System,CTS)定义了如何在运行库中声明、使用和管理类型。
以保证遵循公共语言规范(Common Language Specification,CLS)的语言(C#、VB.NET)编写程序之间的互操作。
CTS是运行库(CLR)支持跨语言集成的一个重要组成部分。
类别
说明
值类型
简单类型
有符号整型:sbyte、short、int 和 long
无符号整型:byte、ushort、uint 和 ulong
Unicode 字符型:char
IEEE 浮点型:float 和 double
高精度小数型:decimal
布尔型:bool
枚举类型
enum E {...} 形式的用户定义的类型
结构类型
struct S {...} 形式的用户定义的类型
可以为 null 的类型
其他所有具有 null 值的值类型的扩展
引用类型
类类型
其他所有类型的最终基类:object
Unicode 字符串型:string
class C {...} 形式的用户定义的类型
接口类型
interface I {...} 形式的用户定义的类型 
数组类型
一维和多维数组,例如 int[] 和 int[,]
委托类型
delegate int D(...) 形式的用户定义的类型
2.1.3 引用类型
引用类型(reference type):
引用类型的变量在堆栈(Stack)中存储对数据(对象)的引用(地址),数据(对象)存储在托管运行环境管理的堆(Heap)中。
对于引用类型,两个变量可能引用同一个对象,因此对一个变量的操作可能影响另一个变量所引用的对象
C# 的引用类型分为:
类类型(class type)、接口类型(interface type)、数组类型(array type) 和委托类型(delegate type)
【例2.1】值类型与引用类型之间的区别示例
变量val1、val2为值类型;ref1、ref2为引用类型。比较其运行结果和内存分配示意图
2.2 变量
变量是程序运行过程中用于存放数据的存储单元。
变量的值在程序的运行过程中可以改变。
   2.2.1 声明变量(变量的定义);
            在定义变量时,首先必须给每一个变量起名,称为变量名,变量名代表存储地址。
           变量的类型决定了存储在变量中的数值的类型。              
          变量定义格式:
          类型标识符  变量名1,变量名2,……
 2.2.1 声明变量(变量的定义)
例:
double fsum;
string strName;
char b;
int x,  y , z;
注意:C#规定,任何变量在使用前,必须先定义, 后使用。
2.2.2 变量的命名规则
变量名的第一个字符必须是字母、下划线(“_”)或@,
其后的字符可以是字母、下划线或数字。
注意,C#定义的关键字不能用作变量名。但可以定义@加关键字的变量名
myVar、_strName、obj1、@namespace为正确的变量名
99var、ItsOK、namespace为错误的变量名
.NET Framework一般遵循两种命名约定:PascalCase和camelCase
2.2.3 变量的赋值
在获取变量的值之前,变量必须已明确赋值(definitely assigned)
C#变量被访问之前必须被初始化;否则编译时会报错。因此,不可能访问一个未初始化变量
2.2.3 变量的赋值
变量的赋值: 就是将数据保存到变量所代表的存储单元中的过程。
格式:
           变量名=表达式;
意义:计算表达式的值,然后将这个值赋予变量。
例:
      double  nAverage;
      int  nAgeSum; 
      nAgeSum=210;  //给nAgeSum变量赋予数值210
                 
2.2.3 变量的赋值
在程序中,可以给一个变量多次赋值。变量的当值等于最近一次给变量所赋的值。
 如:
      nAgeSum=68;           //这时nAgeSum等于68
      nAgeSum=36+2
                 原创力文档
原创力文档 
                        

文档评论(0)