C语言的基本数据类型

来自姬鸿昌的知识库
跳到导航 跳到搜索

https://www.bilibili.com/video/BV1vR4y1H7MY?p=5

#include<stdio.h>
//sizeof 关键字 计算变量或数据类型所占的字节个数
int main()
{
	printf("char size:    %d \n", sizeof(char));
	printf("short size:    %d \n", sizeof(short));
	printf("int size:    %d \n", sizeof(int));
	printf("long int size:    %d \n", sizeof(long int));
	printf("long long size:    %d \n", sizeof(long long));
	printf("float size:    %d \n", sizeof(float));
	printf("double size:    %d \n", sizeof(double));
	printf("long double size:    %d \n", sizeof(long double));
	printf("bool size:    %d \n", sizeof(bool));
	return 0;
}
char size:    1
short size:    2
int size:    4
long int size:    4
long long size:    8
float size:    4
double size:    8
long double size:    8
bool size:    1

long double 具体占几个字节还和编译器有关,VS2019里 long double 占8字节;如果使用的是 dev 编译器,long double 占的是12个字节;在其他的编译器下,有可能占的是16个字节。


早期的C语言(C89)标准里面,并没有 bool 类型;在C99里引入了 bool 类型,在VS 2019里面想使用 bool 类型,还必须引入一个头文件:

#include<stdbool.h>

,才可以使用 bool 类型。


sizeof 既是关键字也是运算符,主要用于计算变量或数据类型所占的字节个数。


字节(byte)是计算机信息技术用于计量存储容量的一种计量单位。

一个字节8位二进制构成。

7 6 5 4 3 2 1 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 1
0 0 0 0 0 0 1 0
……
1 1 1 1 1 1 1 1

基本数据类型

整型

  • char
  • short
  • int
  • long int
  • long long

如:-2,-1,0,1,2


浮点型

  • float
  • double
  • long double

如:12.23


布尔型

  • bool

C99后引入,0-false或1-true


非基本数据类型

无类型/空类型

  • void

无类型,也叫做所谓的空类型。

主要用于定义函数的返回类型是一个空类型。


存储计量的常用表示方式

210 ==> 1KB

220 ==> 1MB

230 ==> 1GB

240 ==> 1TB

250 ==> 1PB

260 ==> 1EB

270 ==> 1ZB

280 ==> 1YB

290 ==> 1BB