【嵌入式——C++】数据类型

【嵌入式——C++】数据类型

  • 数据类型
  • 类型转换
    • 静态转换(Static Cast)
    • 动态转换(Dynamic Cast)
    • 常量转换(Const Cast)
    • 重新解释转换(Reinterpret Cast)

数据类型

类型 说明 占字节数
bool 布尔型 1字节
char 字符型 1字节
wchar_t 宽字符型 2 或 4 个字节
char16_t 字符型
char32_t 字符型
int 整型 4字节
short 整型 2字节
long 整型 4字节 或者8字节(64位系统下)
long long 整型 8字节
void 无类型
float 浮点类型 4字节
double 浮点类型 8字节
long double 浮点类型 8字节
enum 枚举类型
type* 指针类型
type[] 数组类型
struct 结构体类型
class 类类型
string 字符串

转义字符

  • \n:换行;
  • \:代表一个反斜线"";
  • \t:水平制表符,增加前面字符大小的空格,对多行后面字符有对齐效果。

**typedef **
使用 typedef 为一个已有的类型取一个新的名字

typedef int feet;
//创建了一个整型变量 distance
feet distance;

枚举类型

enum 枚举名{ 
     标识符[=整型常数], 
     标识符[=整型常数], 
... 
    标识符[=整型常数]
} 枚举变量;
enum color { red, green, blue } c;

类型转换

静态转换(Static Cast)

int i = 10;
float f = static_cast<float>(i); // 静态将int类型转换为float类型

动态转换(Dynamic Cast)

class Base {};
class Derived : public Base {};
Base* ptr_base = new Derived;
Derived* ptr_derived = dynamic_cast<Derived*>(ptr_base); // 将基类指针转换为派生类指针

常量转换(Const Cast)

常量转换只能用于转换掉 const 属性,不能改变对象的类型。

const int i = 10;
int& r = const_cast<int&>(i); // 常量转换,将const int转换为int

重新解释转换(Reinterpret Cast)

int i = 10;
float f = reinterpret_cast<float&>(i); // 重新解释将int类型转换为float类型

你可能感兴趣的:(c++,开发语言,物联网,嵌入式硬件,iot)