志在指尖
用双手敲打未来

C# 数据类型详解以及变量、目标与内存

1、什么是类型?
类型又称为数据类型(DataType),数据类型在数据结构中的界说是一个值的调集以及界说在这个值集上的一组操作。
能够简单理解为数据在内存中存储的“类型”;小内存包容大尺寸数据会丢失精准度,发作过错;而大内存包容小尺寸数据会导致糟蹋。
还应注意编成言语的数据类型与数学中的数据类型不完全相同,例如数学中3/4=0.75而在C#言语中3/4=0。
不同的编程言语对数据类型的约束程度不一样,所以有强类型编程言语和弱类型编程言语的区别。
变量是用来存储值得所在处,它们有姓名和数据类型。变量的数据类型决议了如何将代表这些值的位存储到计算机的内存中。
咱们都知道,计算机的国际是二进制的,仅仅用0和1就构建了一切的表达,计算机用来存储0或许1的单位便是位(bit),8个位组成一个字节(byte)。C#
2、数据类型在C#言语中的效果
一个C#类型中所包括的信息有:
存储此类型变量所需的内存空间巨细如int类型需求4个字节也便是4*8=32位进行存储
此类型的值可表明的最大、最小值规模sbyte占一个字节8位,s前缀表明带符号位,取值规模-128到127,byte占一个字节,不带符号位,取值规模位0-255。
此类型所包括的成员(如方法、特点、事情等)能够用于ide的过错识别和反射时动态调用
此类型由何基类派生而来
程序运转的时候,此类型的变量在分配在内存的什么位置(栈或堆)
此类型所允许的操作(运算)
3、程序的内存运用分析
Stack简介:函数调用运用,函数调用实际能够理解位栈帧的入栈出栈操作。空间较小,一般1-2M
Stackoverflow空间较小所以会出现栈空间溢出的状况。例如递归函数未正常完毕。
Heap简介:用来存储对象(实例)运用,空间较大,能够达到数G
运用PerfomanceMonitor调查内存运用状况
关于内存泄漏未运用的对象未赋值为null导致废物收集器未处理,导致空间糟蹋,这称为内存泄漏。
这里给出调查内存运用状况的一个样例,新增的wpf程序,运用Winform程序也是可行的。
仿制代码
1usingSystem;2usingSystem.Collections.Generic;3usingSystem.Linq;4usingSystem.Text;5usingSystem.Threading.Tasks;6usingSystem.Windows;7usingSystem.Windows.Controls;8usingSystem.Windows.Data;9usingSystem.Windows.Documents;10usingSystem.Windows.Input;11usingSystem.Windows.Media;12usingSystem.Windows.Media.Imaging;13usingSystem.Windows.Navigation;14usingSystem.Windows.Shapes;1516namespaceHeapSample17{18///19///MainWindow.xaml的交互逻辑20///21publicpartialclassMainWindow:Window22{23publicMainWindow()24{25InitializeComponent();26}2728ListwinList;2930privatevoidBtn_Consume_Click(objectsender,RoutedEventArgse)31{32winList=newList();33for(inti=0;i<20000;i++)34{35Windowwd=newWindow();36winList.Add(wd);37}38}3940privatevoidBtn_ClearHeap_Click(objectsender,RoutedEventArgse)41{42winList.Clear();43}44}45}

未经允许不得转载:IT技术网站 » C# 数据类型详解以及变量、目标与内存
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

志在指尖 用双手敲打未来

登录/注册IT技术大全

热门IT技术

C#基础入门   SQL server数据库   系统SEO学习教程   WordPress小技巧   WordPress插件   脚本与源码下载