float _Comples,double _Complex,long double _Complexfloat _Imaginary,double _Imaginary,long double _Complexcomplex.h头文件,便可以使用complex来代替_Complex,用imaginary来代替_Imaginary,用I来替代-1的平方根。分别为:short,long,ing,char,float,double,unsigned,signed,_Bool,_Complex,_Imaginary
int- 系统给定的基本整数类型,不小于16位。
short或short int- 最大的short类型整数小于或者等于最大的int类型整数,至少占16位
long或long int- 该类型可以表示的整数大于或等于最大的int类型整数,至少占32位。
long long或long long int- 该类型可表示整数大于或者等于最大的long类型整数,至少64位。
一般而言,
long类型占用的内存要比short类型大,int类型宽度要么和long类型相同,要么和short类型相同。依据计算机底层来定。
前面加上
unsigned即可,单独的unsigned代表unsigned int
char类型表示一个字符占用1字节内存(也可以16位)
_Bool布尔类型关键字,是无符号的int类型
float - 系统的基本浮点类型,可精确表示至少6位有效数字
double - 储存浮点数的范围(可能)更大,能表示更多有效数字,或指数
long double - 比double范围(可能)更大。
float _Complex,double _Complex,long double _Complex,float _Imaginary,double _Imaginary,long double _Imaginary
#include<stdio.h> int D13_typesize(void) { //C99为类型提供了%zd转换说明 printf("Type int has a size of %zd bytes.\n", sizeof(int)); printf("Type char has a size of %zd bytes.\n", sizeof(char)); printf("Type long has a size of %zd bytes.\n", sizeof(long)); printf("Type long long has a size of %zd bytes.\n", sizeof(long long)); printf("Type double has a size of %zd bytes.\n", sizeof(double)); printf("Type long double has a size of %zd bytes.\n", sizeof(long double)); return 0; }
运行结果

%zd来匹配sizeof的返回类型,一些不支持C99和C11的编译器可以使用%u或%lu来代替。
原文:https://www.cnblogs.com/ruigege0000/p/13264391.html