c++内置类型
内置类型,由编译器规定,不在任何头文件中,分为三种主要类型:整型、浮点型和void。
void类型
void
主要用于声明无返回值的函数、声明指向任意类型化数据的指针或用于以下类型的表达式:
- 表达式语句
- 逗号运算符的左操作值
- 条件运算符的第二或第三个操作数
第三种情况举例:
for(auto i : {1, 2, 3}){
void;
}
nullptr
c++中的空指针,可以被转化为任何指针类型,比NULL
和0
更加泛用。
布尔类型
布尔类型的值共有true
和false
两种,数值分别是1
和0
。布尔类型的大小根据不同的编译器有不同的大小,如在微软的MSVC
编译器中,布尔类型的大小为1字节,和char
一样大小。一般情况下,编译器认为数值为0
为false
,其他数值均为true
。
字符类型
char
,一字节,可以实现基本的字符集,也就是ASCII码和拓展。编译器认为signed char
和unsigned char
是不一样的。
wchar_t
是c++为了国际化增加的字符类型,可以认为是为了支持unicode码。为了让编译器识别为wchar_t类型的字符,需要在其前面加L
。如:
wchar_t utfstr[] = L"你好,世界!";
char8_t
用于UTF-8字符集。
char16_t
用于UTF-16字符集。
char32_t
用于UTF-32字符集。
例:
auto c0 = 'A'; //char
auto c2 = L'A'; //wchar_t
auto c1 = u8'A'; //char8_t
auto c3 = u'A'; //char16_t
auto c4 = U'A'; //char32_t
c++的字符串支持以下写法:
char str[] = "\x0f" "five";
浮点类型
float
32位,有23位有效数。
double
64位,有52位有效数。
long double
标准未规定大小,只说要大于等于double
。
整数类型
int
为默认的整数类型。
符号修饰符signed
和unsigned
确定变量可不可以储存负值。
大小修饰符short
、long
和long long
确定int
的宽度,int
默认32位,short
为16位。
指定了符号修饰符或大小修饰符后,int
可以省略不写。
整数类型同义字
同一行下的编译器认为是同一类型:
-
short
short int
signed short int
signed short
-
unsigned short
unsigned short int
-
int
signed
signed int
-
unsigned int
unsigned
-
long
long int
signed long
signed long int
-
unsigned long
unsigned long int
-
long long
long long int
signed long long
signed long long int
-
unsigned long long
unsigned long long int
内置类型的大小
1字节
bool
,char
, char8_t
, unsigned char
, signed char
2字节
char16_t
, short
, unsigned short
, wchar_t
3字节
char32_t
, float
, int
, unsigned int
, long
, unsigned long
4字节
double
, long double
, long long
, unsigned long long
本文来自博客园,作者:{bvwvd},转载请注明原文链接:{https://www.cnblogs.com/bvwvd/}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现