一文详解C++中的类型转化.docxVIP

  • 6
  • 0
  • 约1.9千字
  • 约 5页
  • 2025-05-21 发布于四川
  • 举报

一文详解C++中的类型转化

目录1.C语言中的类型转换2.C++强制类型转换1.static_cast2.reinterpret_cast3.const_cast4.dynamic_cast总结

1.C语言中的类型转换

在C语言中,如果赋值运算符左右两侧类型不同,或者形参与实参类型不匹配,或者返回值类型与接收返回值类型不一致时,就需要发生类型转化,C语言中总共有两种形式的类型转换:隐式类型转换和显式类型转换。

1.隐式类型转化:编译器在编译阶段自动进行,能转就转,不能转就编译失败

2.显式类型转化:需要用户自己处理

举个例子:

intmain()

doublei=4.2;

//隐式类型转化

inta=i;

//显示的强制类型转换

intb=(int)i;

int*p=a;

intd=(int)p;

coutiendl;

coutbendl;

coutaendl;

coutdendl;

}

那为什么还要出现C++中的类型转换呢?

因为C语言中的隐式类型转换会带来很多问题:

比如:

intmain()

inti=0;

size_tsize=5;

while(si

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档