基本数据类型

数据类型

32位

64位

char

1

1

int

4

4

long

4

8

float

4

4

double

8

8

long double

12

16

long long

8

8 short                                 2                  2

可以指定int的长度:

数据类型

32位

64位

int32_t

4

4

int64_t

8

8类似的,还有uint32_t和uint64_t

其它数据类型1,size_t:跟机器字长一样;

2,off_t:32位机器下默认是32位长,这时无法对大于4G的文件偏移

操作,这时off_t = __off_t;如果想进行大于4G的文件偏移操作,可以在程序中加入头文件之前定义

#define _FILE_OFFSET_BITS 64这时off_t =

__off64_t,具体定义在unistd.h中;对于64位机,默认就是64位长。

3,ino_t:跟机器字长一有;

C99标准定义一个叫着的头文件,该头文件定义了一系列各种类别的整数类型typedef名字。尽管速多C++

工具支持该头文件已经有一段时间了,但它尚未正式收录于C++标准,因此,在使用该头文件之前,你应该先阅读你的编译器文档,看看它是否支持该文件。

长固定的整型类型

在这个头文件的类型定义中,有一套是字长固定的整型类型:

int8_t     int16_t     int32_t     int64_t

与其对应的字长固定的无符号型整型类型有:

uint8_t    uint16_t    uint32_t    uint64_t

它们的名字非常直观。例如,int8_t是长度固定为8比特的有符号整型类型,而uint8_t则是字长固定为8比特的无符号型整型类型。当你需要

确保在不同的平台上,整型数据的字长固定不变,那么你就可以使用这些typedef名字。

字长最小的快速整型类型

该头文件还定义

了另外一套typedef名字,即“最小指定长度的快速整型类型”。这套typedef名字中的每一种都表示一种整数类型,它满足在长度不小于某个指定长

度的前提下,拥有最快的处理速度。这些整数类型的名字为int_fastn_t(有符号)或者uint_fastn_t(无符号),其中“n”表示最小指

定长度。例如,int_fast32_t指得是字长至少为32比特的快速有符号整型类型。最小字长快速整型类型有:

int_fast8_t  int_fast16_t  int_fast32_t  int_fast64_t

对应的无符号整型类型有:

uint_fast8_t  uint_fast16_t  uint_fast32_t  uint_fast64_t

什么情况下使用这些typedef名字?

假设你需要一个字长不少于16比特的循环计数器,那么你会希望该计数器的类型总是当前计算

机CPU最佳操作的整型类型,而int_fast16_t可以保证任何平台上的编译器总是选择字长不少于16比特的最快整型类型。

#include for (int_fast16_t n=0; n<30000; ++n)

{

//.. do something

}

linux off_t类型的头文件,linux下32位机与64位机基本数据类型长度对比相关推荐

  1. Linux中free函数头文件,Linux C 堆内存管理函数malloc()、calloc()、realloc()、free()详解...

    C 编程中,经常需要操作的内存可分为下面几个类别: 堆栈区(stack):由编译器自动分配与释放,存放函数的参数值,局部变量,临时变量等等,它们获取的方式都是由编译器自动执行的 堆区(heap):一般 ...

  2. linux延时函数及头文件,linux延时函数

    应用程序的延时函数: 头文件: #include 函数:unsigned int sleep (unsigned int seconds);//n秒 此外:int usleep (useconds_t ...

  3. linux中常用的头文件

    #include <linux/***.h> 是在linux-2.6.29/include/linux下面寻找源文件. #include <asm/***.h> 是在linux ...

  4. Linux驱动开发常用头文件

    头文件目录中总共有32个.h头文件.其中主目录下有13个,asm子目录中有4个,linux子目录中有10个,sys子目录中有5个.这些头文件各自的功能如下: 1.主目录 <a.out.h> ...

  5. Linux C try 头文件,linux c 头文件

    //1.Linux中一些头文件的作用: #include //ANSI C.提供断言,assert(表达式) #include //GCC.GTK,GNOME的基础库,提供很多有用的函数,如有数据结构 ...

  6. _int64_在Linux对应对文件,linux下32位机与64位机基本数据类型长度对比

    基本数据类型 数据类型 32位 64位 char 1 1 int 4 4 long 4 8 float 4 4 double 8 8 long double 12 16 long long 8 8 s ...

  7. linux默认头文件,Linux安装合适内核头文件的方法

    摘要 腾兴网为您分享:Linux安装合适内核头文件的方法,桌面时钟,中建在线,圆通金刚,西餐菜谱等软件知识,以及万象,我不信表情包,兔子洞,服你网,电商直播app,网络工具箱,ffu文件,电脑功率计算 ...

  8. linux的头文件下载,Linux内核头文件(linux headers)

    更新 Linux 内核头文件(linux headers) 三 8th, 2013 2,474 views | 发表评论 | Trackback 一般来说,如果不是自己编译 kernel,那么更新头文 ...

  9. linux替换某个文件夹下所有文件,Linux 批量查找并替换文件夹下所有文件的内容...

    1.批量查找某个目下文件的包含的内容 cd etc grep -rn "查找的内容" ./ 2.批量替换某个目下所有包含的文件的内容 cd etc sed -i "s/查 ...

最新文章

  1. HDU3718(最大权完美匹配)
  2. ios可变数组的操作
  3. 获得 DataSet中的记录总数
  4. Java中BigDecimal解决精度丢失问题
  5. 信息学奥赛一本通C++语言——1037:计算2的幂
  6. mysql客户端路由方式_20.3 在InnoDB 集群中 使用MySQL 路由
  7. 5、扩展骨架文件内容
  8. 设计师交流平台!!!
  9. 管螺纹如何标注_螺纹基础知识,螺纹的种类,螺纹的要素和螺纹的画法
  10. JavaScript 全栈工程师培训教程(React.js + Node.js)
  11. 怎样用python做词云_一步一步教你如何用Python做词云
  12. linux centos7 安装svn,linux centos7安装svn并配置同步更新web项目
  13. 计算机无法识别苹果6手机,电脑无法识别iphone6怎么处理
  14. windows 2008 R2 断电进入修复模式,并且无法使用usb键盘鼠标的解决方法
  15. 【Python+Appium】开展自动化测试(八)swipe()滑动页面
  16. 如何使用SRT字幕,导入字幕到视频中
  17. Java日志(slf4j+logback)及打印彩色日志
  18. Python学习笔记之 中英文文本情感分析
  19. 企业购买团体商业保险有助提升公司形象
  20. 关于STM32中SPI硬件的NSS配置

热门文章

  1. zabbix安装及简单配置
  2. 关于K-Means算法
  3. Redis 2.8.9源码 - Redis中的字符串实现 sds
  4. ExtJs启用与禁用工具栏
  5. Domino学习笔记之邮件发送程序
  6. C# 调用Excel组件生成excel文件
  7. 机器学习之SVM多分类
  8. 用mescroll实现无限上拉增加数据,下拉刷新数据 (学习笔记)
  9. CF558E-A Simple Task-线段树+计数排序
  10. await Task传异步Lambda问题