技术经验分享:c++中的数据类型转换

简介: 技术经验分享:c++中的数据类型转换

"

一、在c++中的数据类型转换一般有以//代码效果参考:https://v.youku.com/v_show/id_XNjQwNjg1NTM4NA==.html

下几种情况:

1、将一种算术类型的值赋给另一种算术类型的变量时,c++将对值进行转换

2、表达式中包含不同的类型时,c++将对值进行转换

3、将参数传递给函数时,c++将对值进行转换

二、在进行数据类型转换的时候要注意几点:

1、将小的数据类型转化为大的数据类型,不会出现问题,一般只是转化后所占用的字节更多了,但是要将大的数据类型转化为小的数据类型的话,就会造成数据的丢失。

2、将较大的浮点数转化为较小的浮点数,如double转化为float ,这会造成精度(有效数位)降低,值可能超出目标类型的取值范围,在这种情况下,结果将是不确定的。

3、将浮点类//代码效果参考:https://v.youku.com/v_show/id_XNjQwMDQwMjMxNg==.html

型转换为整型,这会造成小数部分丢失,原来的值可能超出目标类型的取值范围,在这种情况下,结果将是不确定的。

4、当运算涉及到两种数据类型时,一般是较小的类型将被转换为较大的类型。

三、强制类型转换:

1、形式:

a、(typeName) value (C语言的写法)

b、value (typeName) (c++的写法)

c、static_cast 可以将值从一种数值类型转换为另外一种数据类型,格式为: static_cast (value)

例如:

1 #include

2 int main()

3 {

4 using namespace std;

5 int auks ,bats , coots;

6 auks=19.99+11.99;

7

8 bats=(int)19.99+(int)11.99;

9 coots=int(19.99)+int(11.99);

10 cout[""auks=""[ auks ["",bats = ""[ bats;

11 cout["",coots = ""[coots[endl;

12

13 char ch ='Z';

14 cout[""The code for "" [ ch [ ""is"";

15 cout[int(ch)[endl;

16 cout[""yes,the code is "";

17 cout[static_cast span style=""color: rgba(0, 0, 255, 1)"">int[endl;

18 return 0;

19 }

结果如下:

auks=31,bats = 30,coots = 30

The code for Zis90

yes,the code is 90

四、总结:

整型数据类型大小排序: bool , char , signed char, unsigned char, short , unsigned short , int , unsigned int ,long , unsigned long , long long , unsigned long long

浮点数排序大小:float , double , long double

"
image.png

相关文章
|
3月前
|
存储 算法 C++
C++提高篇:泛型编程和STL技术详解,探讨C++更深层的使用
文章详细探讨了C++中的泛型编程与STL技术,重点讲解了如何使用模板来创建通用的函数和类,以及模板在提高代码复用性和灵活性方面的作用。
54 2
C++提高篇:泛型编程和STL技术详解,探讨C++更深层的使用
|
6月前
|
存储 分布式数据库 API
技术好文:VisualC++查看文件被哪个进程占用
技术好文:VisualC++查看文件被哪个进程占用
|
3月前
|
存储 Linux C语言
【C++基础】数据类型详解
这篇文章详细介绍了C++中各种基本数据类型,包括整型、浮点型、字符型、字符串型和布尔型,以及它们的使用方式和范围。
27 4
|
4月前
|
C++
c++学习笔记01 基本知识与数据类型
C++学习笔记,涵盖了C++中的常量定义、数据类型、变量内存大小计算、基本数据类型(整型、实型、字符型、字符串型、布尔型)以及转义字符的使用。
48 4
|
4月前
|
人工智能 Anolis
聚焦C++20 最新标准!技术 Workshop 精彩亮点一览 | 2024 龙蜥大会
多场技术 Workshop、多位领域专家亲自授课,分享独家洞察与宝贵经验。
|
4月前
|
算法 C# 开发工具
《黑神话:悟空》背后的编程语言揭秘——超越C++的多元技术融合
【8月更文挑战第27天】在游戏开发领域,一款游戏的成功往往离不开其背后强大的技术支持和编程语言的精妙运用。《黑神话:悟空》作为备受瞩目的国产单机动作游戏,其开发过程不仅涉及了多种编程语言,更是一次技术创新的集中展现。然而,当我们深入探讨其开发语言时,会发现它并非仅依赖于单一的C++,而是融合了多种编程语言的优势,共同铸就了这款游戏的辉煌。
280 0
|
5月前
|
存储 编译器 C++
|
6月前
|
SQL 人工智能 算法
技术心得记录:模板函数函数模板FunctionTemplate(C++Primer
技术心得记录:模板函数函数模板FunctionTemplate(C++Primer
|
6月前
|
数据采集 自然语言处理 数据挖掘
一文搞懂:【VC++技术杂谈005】如何与程控仪器通过GPIB接口进行通信
一文搞懂:【VC++技术杂谈005】如何与程控仪器通过GPIB接口进行通信
150 0
|
6月前
|
C++
技术经验分享:C++程序设计的技巧
技术经验分享:C++程序设计的技巧
39 0