浅议C/C++数据类型转换

阳光穿透心脏的1/2处 2022-01-11 01:59 301阅读 0赞

浅议C/C++数据类型转换

一、何为数据类型

在C语言版的数据结构中我们就学过,数据类型表达了一个值的集合以及定义在这个值集上的一组操作的总称。每一种不同的数据类型都有各自不同的操作从而实现不同的功能。

比如在整形int上面就定义了一些列操作+,-,*,/,%等,并且经过计算后结果还是整形(数据类型值的封闭性)。在字符串string上定义了strcat,strcpy等操作,并且返回的也都是字符串。

二、为什么需要数据类型转换

由于一种数据类型的表现形式或者功能有限,因而需要转换到另外一种数据类型去实现相应的功能。比如字符串类型表示的数字要参与数学计算,那肯定得先进行类型转化;

三、C中的数据类型转换

C语言中的类型转换有同种类型的转换和不同类型的转化。同种类型的转换比如int系列的转换,包括隐式转换和显示转换。不同种类型的转换则需要借组函数来完成,比如字符串型数据转化成整形或者浮点型,需要函数atoi或者strtod来转换。

四、C++中的数据类型转换

在C++中,除了继承C语言中的一些类型转换方式外,还提供了static_cast**、dynamic_cast、reinterpret_cast和const_cast四个函数来完成更广意义上的转换。主要原因是C++**支持面向对象编程,因而转换也变得多种多样。

转载于:https://www.cnblogs.com/zxher/archive/2010/07/23/1783758.html

发表评论

表情:
评论列表 (有 0 条评论,301人围观)

还没有评论,来说两句吧...

相关阅读

    相关 数据类型转换

    自动转换是程序在执行过程中 “ 悄然 ” 进行的转换,不需要用户提前声明,一般是从位数低的类型向位数高的类型转换;强制类型转换则必须在代码中声明,转换顺序不受限制。 自动数

    相关 数据类型转换

    \       任意类型的数据可以转换成String类型  \      从低精度转向高精度永远不会溢出,并且总是成功的。  \      从高精度转向低精度,必然会有