浅谈C#语言中的各种数据类型,与数据类型之间的转换

什么是数据类型?

数据类型,百度百科是这样解释的:数据类型在数据结构中的定义是一个值的集合以及定义在这个值集上的一组操作。这样的解释对于一个初学者来说未必太过于深奥。

简单点说,数据类型就是不同长度的数据的归类。数据类型的出现就是为了解决计算机中对不同长度的数据合理保存的问题。为了把数据分成所需内存大小不同的数据,编程的时候需要用大数据的时候才需要申请大内存,就可以充分利用内存。达到资源合理优化利用,减少浪费内存的目的。

数据类型有哪些?

类型            描述                                                       范围                                                                    默认值

常用的数据类型:

  • 整形的类型有:int、short、long、byte
  • 浮点型:float  32位单精度浮点型(注意:此类型的数据在输入时,应该在数据后加f,如3.14f)。

 double  64位双精度的浮点类型。

  • 字符型:char 单个字符的类型定义时用一对单引号表示(‘1‘)。

string 字符串类型定义时用一对双引号表示(“abc”)。

  • bool型: bool类型是一种比较特殊的数据类型,它的值只有 true或false,表示真或假,只有当返回值为真(true)时,执行该类型的表达式。

数据类型之间的转换:

  • int与double之间的转换
  • 1、int转double:由于int类型数据所用的内存的长度小于double,所以程序在这里采用隐式转换的法则(自动转换),举例:

在这项表达式中,int类型的变量a,通过表达式b=a;直接将a的值赋值给,程序并没有报错。

2、double转int,这种顺序的转换就要注意了,因为,double转int需要用到显示转化强制转换,举例:当我们在这里不用强制转换程序就会报错:

所以这里就需要这样写:a=(int) b;先将b的值转换为int型的变量,再赋值给int 型的变量a,类型匹配才能转换成功。

  • 任意类型转(string)字符串:规则是  (待转换的变量名.Tostring())。关键词就是   点Tostring(),这里要注意的地方是Tostring中T是必须要大写的。举例:
  • string转数字(int或者double):规则是 int.Parse(字符串变量名)或 double.Parse(字符串变量名);举例:

同时这里也需要注意的是Parse的首字母是大写。

总结:

  1. 数据类型就是就是计算机为了达到内存的优化配置 ,将数据按照不同内存长度来划分数据块。
  2. 数据类型分为整型,浮点型,字符型,bool型四大类。
  3. 数据类型之间的转换主要的三大类:
  • int与double的相互转换:关键词    (int变量名)。
  • 任意类型转string    关键词 变量名.Tostring()
  • string转数字:关键词     类型名.Parse(待转换变量名)

2018-06-11

原文地址:https://www.cnblogs.com/zhangqiyu/p/9165204.html

时间: 2024-10-10 08:37:01

浅谈C#语言中的各种数据类型,与数据类型之间的转换的相关文章

浅谈C语言中的联合体(转载)

联合体union 当多个数据需要共享内存或者多个数据每次只取其一时,可以利用联合体(union).在C Programming Language 一书中对于联合体是这么描述的: 1)联合体是一个结构: 2)它的所有成员相对于基地址的偏移量都为0: 3)此结构空间要大到足够容纳最"宽"的成员: 4)其对齐方式要适合其中所有的成员: 下面解释这四条描述: 由于联合体中的所有成员是共享一段内存的,因此每个成员的存放首地址相对于于联合体变量的基地址的偏移量为0,即所有成员的首地址都是一样的.为

浅谈C语言中的强符号、弱符号、强引用和弱引用

摘自http://www.jb51.net/article/56924.htm 浅谈C语言中的强符号.弱符号.强引用和弱引用 投稿:hebedich 字体:[增加 减小] 类型:转载 时间:2014-10-31 我要评论 这篇文章主要介绍了C语言中的强符号.弱符号.强引用和弱引用的定义及相关内容,非常的简单易懂,有需要的朋友可以参考下 首先我表示很悲剧,在看<程序员的自我修养--链接.装载与库>之前我竟不知道C有强符号.弱符号.强引用和弱引用.在看到3.5.5节弱符号和强符号时,我感觉有些困惑

浅谈 C 语言中模块化设计的范式

今天继续谈模块化的问题.这个想慢慢写成个系列,但是不一定连续写.基本是想起来了,就整理点思路出来.主要还是为以后集中整理做点铺垫. 我们都知道,层次分明的代码最容易维护.你可以轻易的换掉某个层次上的某个模块,而不用担心对整个系统造成很大的副作用. 层次不清的设计中,最糟糕的一种是模块循环依赖.即,分不清两个模块谁在上,谁在下.这个时候,最容易牵扯不清,其结果往往是把两者看做一体去维护算了.这里面还涉及一些初始化次序等繁杂的细节. 其次,就是越层的模块联系.当模块 A 是模块 B 的上层,而模块

浅谈c语言中的堆

操作系统堆管理器管理: 堆管理器是操作系统的一个模块,堆管理内存分配灵活,按需分配. 大块内存: 堆内存管理者总量很大的操作系统内存块,各进程可以按需申请使用,使用完释放. 程序手动申请&释放: 手工意思是需要写代码去申请malloc和释放free. 脏内存: 堆内存也是反复使用的,而且使用者用完释放前不会清除,因此也是脏的. 临时性: 堆内存只在malloc和free之间属于我这个进程,而可以访问.在malloc之前和free之后      都不能再访问,否则会有不可预料的后果. 堆内存使用范

浅谈C语言中的联合体

联合体union 当多个数据需要共享内存或者多个数据每次只取其一时,可以利用联合体(union).在C Programming Language 一书中对于联合体是这么描述的: 1)联合体是一个结构: 2)它的所有成员相对于基地址的偏移量都为0: 3)此结构空间要大到足够容纳最"宽"的成员: 4)其对齐方式要适合其中所有的成员: 下面解释这四条描述: 由于联合体中的所有成员是共享一段内存的,因此每个成员的存放首地址相对于于联合体变量的基地址的偏移量为0,即所有成员的首地址都是一样的.为

浅谈C语言中结构体的初始化

转自:http://www.jb51.net/article/37246.htm <代码大全>建议在变量定义的时候进行初始化,但是很多人,特别是新人对结构体或者结构体数组定义是一般不会初始化,或者不知道怎么初始化.1.初始化 复制代码代码如下: typedef struct _TEST_T {        int i;        char c[10];}TEST_T;TEST_T gst  = {1, “12345”};//可以初始化,设置i为1,s为一个字符串.TEST_T gst 

转: 浅谈C/C++中的指针和数组(二)

转自:http://www.cnblogs.com/dolphin0520/archive/2011/11/09/2242419.html 浅谈C/C++中的指针和数组(二) 前面已经讨论了指针和数组的一些区别,然而在某些情况下,指针和数组是等同的,下面讨论一下什么时候指针和数组是相同的. C语言标准对此作了说明: 规则1:表达式中的数组名被编译器当做一个指向该数组第一个元素的指针: 注:下面几种情况例外 1)数组名作为sizeof的操作数 2)使用&取数组的地址 规则2:下标总是与指针的偏移量

浅谈SQL Server中的事务日志(一)----事务日志的物理和逻辑构架

浅谈SQL Server中的事务日志(一)----事务日志的物理和逻辑构架 简介 SQL Server中的事务日志无疑是SQL Server中最重要的部分之一.因为SQL SERVER利用事务日志来确保持久性(Durability)和事务回滚(Rollback).从而还部分确保了事务的ACID属性.在SQL Server崩溃时,DBA还可以通过事务日志将数据恢复到指定的时间点.当SQL Server运转良好时,多了解一些事务日志的原理和概念显得并不是那么重要.但是,一旦SQL SERVER发生崩

浅谈前、中、后缀表达式

浅谈前.中.后缀表达式 前.中.后缀表达式是信息学奥林匹克竞赛中比较鸡肋的知识点.但是知识点在考纲范围内,而且中缀表达式转后缀表达式是比较有用的知识.所以在这里为大家简单介绍一下. 之前在自学前.中.后缀表达式的时候,发现网上的很多博客和讲解的思路都不是很明了,或者就是对新手不是很友好,感谢@JZYShurak的讲解,让我对这个东西建立了一个直观的认识.所以我来补一篇比较基础,比较好理解,语言比较简洁的博客.希望能对各路大佬有所些许的帮助. 中缀表达式 中缀表达式就是我们生活中常用的表达式,简单