1. 基本数据类型:
字符类型:char
整型:short,int,long
浮点型:float,double
基本数据类型是我们写程序过程中用的最多的。其实,我认为使用重定义以后的数据类型会更好。
2. 重定义后的数据类型:
字符类型:int8_t,uint8_t
整型:int16_t,uint16_t,int32_t,uint32_t,int64_t,uint64_t,size_t
浮点型:float,double
这些数据类型在『stdint.h』文件中有定义。
/*
* ISO C99: 7.18 Integer types <stdint.h>
*/
#ifndef _STDINT_H
#define _STDINT_H 1
#include <features.h>
#include <bits/wchar.h>
#include <bits/wordsize.h>
/* Exact integral types. */
/* Signed. */
/* There is some amount of overlap with <sys/types.h> as known by inet code */
#ifndef __int8_t_defined
# define __int8_t_defined
typedef signed char int8_t;
typedef short int int16_t;
typedef int int32_t;
# if __WORDSIZE == 64
typedef long int int64_t;
# else
__extension__
typedef long long int int64_t;
# endif
#endif
/* Unsigned. */
typedef unsigned char uint8_t;
typedef unsigned short int uint16_t;
#ifndef __uint32_t_defined
typedef unsigned int uint32_t;
# define __uint32_t_defined
#endif
#if __WORDSIZE == 64
typedef unsigned long int uint64_t;
#else
__extension__
typedef unsigned long long int uint64_t;
#endif
#endif
3. 使用重定义数据类型的优势
优势就是方便移植。这些数据类型由标准C规定,当程序分别运行在 32位平台和 64位平台时,『stdint.h』文件中对于 64位的数据类型分别做了适配。因此,我们写代码时就无需考虑平台的差异性。