C#中的预定义类型与引用类型

一、预定义的值类型

一个字节(1Byte)=8位(8Bit)

BitArarry类可以管理位Bit。

1、整型

所有的整形变量都能用十进制或十六进制表示:long a=0x12AB

对一个整形值如未指定类型,默认为int类型,可加上U,L,UL后缀表示其他类型。 long a=1234L

  • sbyte :无符号形式:1字节(8位),范围:0 ~ 255(28-1),十六进制表示:0x00-0xFF,System.SByte
  • byte   :有符号形式:1字节(8位),范围:-128 ~ 127(-215 ~ 215-1),十六进制表示:0x00-0xFF,System.SByte
  • short  :有符号形式:2字节(16位),范围:-32768 ~ 32767(-231 ~ 231-1),十六进制表示:0x0000-0xFFFF,System.Int16
  • ushort:无符号形式:2字节(16位),范围:0 ~ 65534(216-1),十六进制表示:0x0000-0xFFFF,System.Int16
  • int : 有符号形式:4个字节(32位),范围:-231 ~ 231-1,System.Int32,
  • uint(U):无符号形式:4个字节(32位),范围:0 ~ 232-1,System.Int32,
  • long(L):有符号形式:8个字节(64位),范围:263  ~ 263-1,System.Int64
  • ulong(UL):无符号形式:8个字节(64位),范围:0 ~ 264-1,System.Int64

2、浮点型

对一个浮点数值默认为double类型,其后加F、M指定为其他类型。

  • float(F):单精度浮点数,4字节(32位),小数精度:7,范围:1.5*10-45 ~ 3.4*1038 ,System.Single
  • double:双精度浮点数,8字节(64位),小数精度:15/16,范围:5.0*10-324  ~ 3.4*10308  ,System.Double
  • decimal(M):128位高精度,16字节(128位),小数精度:28,范围:1.0*10-28 ~ 7.9*1028 ,System.Decimal

四舍五入的方法:

decimal a1 = decimal.Round(decimal.Parse("15.252"), 2);//12.25
decimal a2 = Math.Round(decimal.Parse("15.256"), 2);//15.26

3、布尔型

  • bool :一个字节(8位),范围:true/false,System.Boolean

4、字符型(一个字符用2个字节表示)

  • char:2字节(16位),范围:Unicode字符。

字符表示法:

  • 字面法:char a=’x’
  • 十六进制法:char a=’\x0058’
  • 显示转换整数:char a=(char)88
  • Unicode形式:char a=’\u0058’

二、预定义的引用类型:object和string

注意:string作为函数的参数时,为传值形式,传递地址仍然需要增加”ref”

三、预定义的基础类型转换

https://www.jb51.net/article/247454.htm

到此这篇关于C#预定义类型与引用类型的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • C#预定义数据类型之值类型和引用类型介绍

    C#的预定义数据类型包括两种,一种是值类型,一种是引用类型.值类型的变量在内存中是存储在堆栈中的,字面上理解就是直接保存其值,如声明一个属于值类型的整型变量,并给它赋予另一个整型变量的值,则在内存中事先复制一个整型变量的值,然后将其赋予刚刚声明的整型变量,这时内存中就会有两个整型值.引用类型的变量在内存中是直接保存其值的引用.C#语言中大多数复杂数据类型都是引用类型. 先来一个值类型的常量的例子 根据用户输入圆的半径,求圆的面积的代码: using System; using System.Co

  • C#值类型、引用类型、泛型、集合、调用函数的表达式树实践

    目录 一,定义变量 二,访问变量/类型的属性字段和方法 1. 访问属性 调用静态类型属性 调用实例属性/字段 2. 调用函数 调用静态类型的函数 调用实例的函数 三,实例化引用类型 new 给属性赋值 创建引用类型 示例 四,实例化泛型类型于调用 五,定义集合变量.初始化.添加元素 一,定义变量 C# 表达式树中,定义一个变量,使用 ParameterExpression. 创建变量结点的方法有两种, Expression.Parameter() Expression.Variable() //

  • C#中值类型和引用类型的区别

    一.值类型和引用类型的区别 .NET的类型可以分为两类:值类型和引用类型.这两种类型各有特点,即使它们都继承自System.Object,并且有装箱和拆箱等操作确保两种类型可以方便地交互,但是理解值类型和引用类型将有助于程序员编写出高效的代码,相反的,在不理解值类型和引用类型的情况下,程序员很容易编写出可以正确执行但性能较差的代码. 所有.NET的类型都可以分为两类:值类型和引用类型.最简单也最明确的一个区分标准是:所有的值类型都继承自System.ValueType(System.ValueT

  • C#预定义的基础类型转换

    一.BitConverter 将预定义的基础类型与字节数据进行互转(Unicode) 1.将值类型转成字节数组(Unicode):BitConverter.GetBytes() byte[] data = BitConverter.GetBytes('哈'); Console.Write(data);//200,84 (两个字节) Console.Write(BitConverter.GetBytes('1'));//49,0 (两个字节) Console.Write(BitConverter.

  • C#新特性之可空引用类型

    安装 您必须下载Visual Studio 2017 15.5预览版(目前最新发布版本是15.4),下载地址:https://www.visualstudio.com/en-us/news/releasenotes/vs2017-preview-relnotes. 安装Roslyn扩展预览版本: 下载并解压 Roslyn_Nullable_References_Preview.zip [最新版本 11/15/17]: 关闭所有运行的Visual Studio: 运行zip根目录中的 .\inst

  • 轻松学习C#的预定义数据类型

    C#的预定义数据类型包括两种,一种是值类型,一种是引用类型.值类型的变量在内存中是存储在堆栈中的,字面上理解就是直接保存其值,如声明一个属于值类型的整型变量,并给它赋予另一个整型变量的值,则在内存中事先复制一个整型变量的值,然后将其赋予刚刚声明的整型变量,这时内存中就会有两个整型值.引用类型的变量在内存中是直接保存其值的引用.C#语言中大多数复杂数据类型都是引用类型.        先来一个值类型的常量的例子        根据用户输入圆的半径,求圆的面积的代码: <span style="

  • C#中的预定义类型与引用类型

    一.预定义的值类型 一个字节(1Byte)=8位(8Bit) BitArarry类可以管理位Bit. 1.整型 所有的整形变量都能用十进制或十六进制表示:long a=0x12AB 对一个整形值如未指定类型,默认为int类型,可加上U,L,UL后缀表示其他类型. long a=1234L sbyte :无符号形式:1字节(8位),范围:0 ~ 255(28-1),十六进制表示:0x00-0xFF,System.SByte byte   :有符号形式:1字节(8位),范围:-128 ~ 127(-

  • C#值类型和引用类型的深入理解

    从概念上看,值类型直接存储其值,而引用类型存储对其值的引用.这两种类型存储在内存的不同地方.在C#中,我们必须在设计类型的时候就决定类型实例的行为.这种决定非常重要,用<CLR via C#>作者Jeffrey Richter的话来 说,"不理解引用类型和值类型区别的程序员将会给代码引入诡异的bug和性能问题(I believe that a developer who misunderstands the difference between reference types and

  • C++预定义的流对象基本示例详解

    目录 C++预定义的流对象 示例说明 总结: C++预定义的流对象 C++预定义的流对象是可用于输入和输出的数据流向对象.它们是在C++语言中内置的,可以使用标准库的iostream头文件来调用这些流对象. 在这篇文章中,我们将介绍C++预定义的流对象,并提供一些示例说明. 示例说明 cin: cin是标准输入流对象,用于从控制台读取输入. 示例: int num; cout << "Enter a number: "; cin >> num; cout <

  • C#中值类型和引用类型解析

    在C#中,值类型和引用类型是相当重要的两个概念,必须在设计类型的时候就决定类型实例的行为.如果在编写代码时不能理解引用类型和值类型的区别,那么将会给代码带来不必要的异常.很多人就是因为没有弄清楚这两个概念从而在编程过程中遇到了很多问题,在这里博主浅谈对值类型和引用类型的认识. 首先从概念上看,值类型直接存储其值,而引用类型存储对其值的引用.从而这两种类型存储在内存的不同地方. 其次从内存空间上看,值类型是在栈中操作,而引用类型则在堆中分配存储单元. 栈在编译的时候就分配好内存空间,在代码中有栈的

  • php中常用的预定义变量小结

    复制代码 代码如下: <?php echo "当前操作系统信息".PHP_OS."<br/>"; echo '本文件路径和文件名为:'.__FILE__.'<br />'; echo "当前PHP版本信息".PHP_VERSION."<br/>"; ?> 常用的php预定义变量! 前面的$_SERVER[PHP_SELF]返回的是一段信息,如"/upload/try.p

  • VSCode下.json文件的编写之(1) linux/g++ (2).json中参数与预定义变量的意义解释

    0 引言 转入linux/VSCode编程之后,迫切了解到有必有较为系统地学习一下VSCode中相关配置文件的写法.下面将分为 linux/g++编译指令..json文件关键词/替换变量的意义.编译链接过程原理分析几个部分进行介绍,并以opencv为例,将上述知识综合运用. 1 linux/g++编译指令介绍 参照BattleScars的博客,摘取其中对本文有用的部分进行运用,博客链接如下,质量非常之高,表示感谢!!! https://www.jb51.net/article/183540.ht

  • js中的值类型和引用类型小结 文字说明与实例

    一.拥抱JavaScript 曾经名不经传的JavaScript随着AJAX的流行而身价倍增,现在JavaScript不再仅仅是WEB开发中一个可有可无的辅助工具,甚至有了专门属于它的职位"JavaScript工程师",那怕你仅仅是一名WEB后台开发程序员,你都必须了解JavaScript,至少在一些相关招聘职位要求上你可以看到"熟悉JavaScript优先"的字眼.甚至我还要告诉你,你将可以用JavaScript开发桌面软件,这得益于Adobe AIR的另外一种开

  • C#中值类型和引用类型的区别深度分析

    本文通俗易懂的分析了C#中值类型和引用类型的区别.分享给大家供大家参考.具体分析如下: 似乎"值类型和引用类型的区别"是今年面试的流行趋势,我已然是连续三次(目前总共也就三次)面试第一个问题就遇到这个了,这是多大的概率啊,100%,哈哈,我该买彩票去! 言归正传,咱还是先来探讨探讨这二者之间有什么区别吧.记得有一次电话面试中,我直接跟面试官说:"值类型是现金,引用类型是存折",后来想想当时说这话虽是有点儿冲动地脱口而出,但也没什么不妥.我这人不善于背理论的教条,喜欢

  • JavaScript中值类型和引用类型的区别

    JavaScript的数据类型分为两类:原始类型和对象类型.其中,原始类型包括:数字.字符串和布尔值.此外,JavaScript中还有两个特殊的原始值:null和undefined,它们既不是数字也不是字符串,更不是布尔值.它们通常分别代表了各自特殊类型的唯一成员.JavaScript中除了数字.字符串.布尔值.null和undefined之外的就是对象了. JavaScript中值类型和引用类型的区别 JavaScript中的值类型的值是不可变的: 任何方法都无法改变值类型的值.数字.布尔值.

随机推荐