温故而知新三(C++)

创作人QQ:851301776,邮箱:[email protected],欢迎大家一起技术交流,本博客主要是自己学习的心得体会,只为每天进步一点点!

个人座右铭:
1.没有横空出世,只要厚积一定发。
2.你可以学历不高,你可以不上学,但你不能不学习

一、类型转换

1 隐式转换

char c = 'a';
int i = c;//隐式转换
  
void func(int i){}
func(c);//隐式转换
  
int func(void)
{
   char c = 'a';
   return c;//隐式转换
}

2 显式转换


2.1 C++兼容C中强制转换

int i = (int)c;//C风格强制转换
int i = int(c);//C++风格强制转换


2.2 C++增加了四种操作符形式的显式转换
1)静态类型转换
语法:
   目标类型变量=static_cast<目标类型>(源类型变量)
适用场景:
    主要用于将void*转换为其它类型指针。

#include <iostream>

using namespace std;

int main(void)
{
    int i = 123;
    int* pi = &i;
    //char c = (int)pi;//C风格
    char c = int(pi);//C++风格

    void* pv = pi;
 

猜你喜欢

转载自blog.csdn.net/weixin_43155199/article/details/125481243