本文将列出 C语言中大致的数据类型以及分类、数据类型占用字节数
C语言中的数据类型分类表
数据类型 | 分类 | 分类 | 关键字 | 变量声明实例 |
基本类型 | 整形 | 基本整形 | int | int a |
基本类型 | 整形 | 长整型 | long | lng int a ; 或 long a; |
基本类型 | 整形 | 短整型 | short | short int a;或 short a; |
基本类型 | 整形 | 无符号整型 | unsigned | unsigned int a; unsigned long a; unsigneg short a; |
基本类型 | { | 单精度实型 | float | float a; |
基本类型 | 实形(浮点型) | 双精度实型 | double | doublle a; |
基本类型 | { | 长双精度实型 | long double | long double a; |
基本类型 | 字符型 | 字符型 | char | char a; |
基本类型 | 枚举型 | 枚举型 | enum | enum response{no,yes,none} |
{ | 数组 | – | – | int score[10]; |
构造类型 | 结构体 | – | struct | struct data { int year; int month; int day; } |
{ | 共用体 | – | union | union { int single; char spouseName[20]; struct data divorcedDay; }married; |
指针类型 | 指针类型 | 指针类型 | – | int *ptr; int *pStr; |
无类型 | 无类型 | 无类型 | void | void Sort(int arry[],int n); |
C语言中的数据类型所占用的字节数
衡量内存空间大小的表示单位
英文称谓 | 中文称谓 | 换算方法 |
bit(b) | 比特 | |
byte(B) | 字节 | 1B = 8b |
Kilobyte(KB) | 千 | 1KB = 1024B |
Megabyte(MB) | 兆 | 1MB = 1024KB |
Gigabyte(G) | 吉 | 1G = 1024MB |
Terabyte(T) | 太 | 1TB = 1024MB |
C语言类型的取值范围以及占用字节数
数 据 类 型 | 所占用字节数(B) | 取值范围 |
char / signed char | 1 | -128~127 |
unsigned char | 1 | 0~255 |
short int / signed short int | 2 | -32768~32767 |
unsigned short int | 2 | 0~65535 |
unsigned int | 4 | 0~4294967295 |
int / signed int | 4 | -2147483648~2147483647 |
unsigned long int | 4 | 0~4294967295 |
long int / signed long int | 4 | -2147483648~2147483647 |
float | 4 | -3.14*10^38~3.14*10^38 |
double | 8 | -1.7*10^308~1.7*10^308 |
long double | 8 | -1.7*10^308~1.7*10^308 |
使用sizeof( )运算符 测试 不同类型所占用字节数
#include<stdio.h>
int main(){
printf("数据类型 ----------- 占用字节数\n");
printf(" int ----------- %d字节(byte)\n",sizeof(int));
printf(" char ----------- %d字节(byte)\n",sizeof(char));
printf(" shhort ----------- %d字节(byte)\n",sizeof(short));
printf(" long ----------- %d字节(byte)\n",sizeof(long));
printf(" float ----------- %d字节(byte)\n",sizeof(float));
printf(" double ----------- %d字节(byte)\n",sizeof(double));
return 0;
}
运行结果:
数据类型 ----------- 占用字节数
int ----------- 4字节(byte)
char ----------- 1字节(byte)
shhort ----------- 2字节(byte)
long ----------- 4字节(byte)
float ----------- 4字节(byte)
double ----------- 8字节(byte)
当然在不同的运行环境所占用的字节数也不同
Views: 0