【C/C++】C/C++基本数据类型-阿里云开发者社区

开发者社区> tengweitw> 正文

【C/C++】C/C++基本数据类型

简介: 标准C基本数据类型:int char long short float double void以及它们与signed、unsigned的组合。标准C++增加了bool型和wchar_t型,在32位操作系统上,它们的长度如下表: ...
+关注继续查看

标准C基本数据类型:int char long short float double void以及它们与signed、unsigned的组合。标准C++增加了bool型和wchar_t型,在32位操作系统上,它们的长度如下表:

类型标识符 类型说明 长度(字节) 范围 备注
char 字符型 1 -128 ~ 127 -27 ~ (27 -1)
unsigned char 无符字符型 1 0 ~ 255 0 ~ (28 -1)
short int 短整型 2 -32768 ~ 32767 2-15 ~ (215 - 1)
unsigned short int 无符短整型 2 0 ~ 65535 0 ~ (216 - 1)
long int 长整型 4 -2147483648 ~ 2147483646 -231 ~ (231 - 0)
int 整型 4 -2147483648 ~ 2147483647 -231 ~ (231 - 1)
unsigned int 无符整型 4 0 ~ 4294967295 0 ~ (232-1)
float 实型(单精度) 4 1.18*10-38 ~ 3.40*1038 7位有效位
double 实型(双精度) 8 2.23*10-308 ~ 1.79*10308 15位有效位
long double 实型(长双精度) 10 3.37*10-4932 ~ 1.18*104932 19位有效位

在不同的平台下,字长不同,具体可以通过以下代码查看:
  1. #include<stdio.h>  
  2.   
  3. void main()  
  4. {  
  5.     //字符型 有符号和无符号的字节数一样 只是范围不同  
  6.     printf("char is %d\n",sizeof(char));  
  7.     printf("unsigned char is %d\n",sizeof(unsigned char));  
  8.   
  9.     //整数型  
  10.     printf("short int is %d\n",sizeof(short int));  
  11.     printf("unsigned short int is %d\n",sizeof(unsigned short int));  
  12.     printf("long int is %d\n",sizeof(long int));  
  13.     printf("int is %d\n",sizeof(int));  
  14.     printf("unsigned int is %d\n",sizeof(unsigned int));  
  15.       
  16.     //浮点型  
  17.     printf("float is %d\n",sizeof(float));  
  18.     printf("double is %d\n",sizeof(double));  
  19.     printf("long double is %d\n",sizeof(long double));  
  20.       
  21. }  

在头文件climits.h中,定义了符号常量来表示类型的限制。其列表如下:

name expresses value*
CHAR_BIT Number of bits in a char object (byte) 8 or greater
SCHAR_MIN Minimum value for an object of type signed char -127 (-27+1) or less
SCHAR_MAX Maximum value for an object of type signed char 127 (27-1) or greater
UCHAR_MAX Maximum value for an object of type unsigned char 255 (28-1) or greater
CHAR_MIN Minimum value for an object of type char either SCHAR_MIN or 0
CHAR_MAX Maximum value for an object of type char either SCHAR_MAX or UCHAR_MAX
MB_LEN_MAX Maximum number of bytes in a multibyte character, for any locale 1 or greater
SHRT_MIN Minimum value for an object of type short int -32767 (-215+1) or less
SHRT_MAX Maximum value for an object of type short int 32767 (215-1) or greater
USHRT_MAX Maximum value for an object of type unsigned short int 65535 (216-1) or greater
INT_MIN Minimum value for an object of type int -32767 (-215+1) or less
INT_MAX Maximum value for an object of type int 32767 (215-1) or greater
UINT_MAX Maximum value for an object of type unsigned int 65535 (216-1) or greater
LONG_MIN Minimum value for an object of type long int -2147483647 (-231+1) or less
LONG_MAX Maximum value for an object of type long int 2147483647 (231-1) or greater
ULONG_MAX Maximum value for an object of type unsigned long int 4294967295 (232-1) or greater
LLONG_MIN Minimum value for an object of type long long int -9223372036854775807 (-263+1) or less
LLONG_MAX Maximum value for an object of type long long int 9223372036854775807 (263-1) or greater
ULLONG_MAX Maximum value for an object of type unsigned long long int 18446744073709551615 (264-1) or greater

* 其精确值依赖于你的系统和库的实现

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
《UNIX环境高级编程(第3版)》——2.8 基本系统数据类型
历史上,某些UNIX系统变量已与某些C数据类型联系在一起,例如,历史上主、次设备号存放在一个16位的短整型中,8位表示主设备号,另外8位表示次设备号。但是,很多较大的系统需要用多于256个值来表示其设备号,于是,就需要一种不同的技术。
1048 0
C/C++/C#/Python:数据类型比较
C/C++/C#/Python这四种语言,由低级到高级,代表了计算机编程语言的一个发展流程,前两种编译型语言大家可能比较熟悉,在大学阶段都基本了解过。
2838 0
C++语言基础 例程 C++的数据类型和运算符
贺老师的教学链接 第一个C++程序 #include &lt;iostream&gt; //包含头文件iostream using namespace std; //使用命名空间std int main( ) { cout&lt;&lt;"Hello World."&lt;&lt;endl; //输出结果 return
837 0
+关注
tengweitw
所在学校:西电 兴趣爱好:编程、英语,象棋,乒乓球 email:771257840@qq.com
159
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载