C语言数据类型在IA32中的大小

这个主要是一些常识问题,以及在使用AT&T语法汇编时会使用的编码后缀:

C声明 Intel数据类型 汇编后缀 大小(byte)
char 字节  b  1
short  w  2
int 双字  l  4
long int 双字  l  4
long long int  -  4
char* 双字  l  4
float 单精度  s  4
double 双精度  l  8
long double 扩展精度  t  10/12

小常识:long double是在ISO C99中引入,用于扩展浮点精度,它的大小不仅和机器体系结构有关,同时和编译器也有关系,在除X86以外的平台上一般用8个字节表示,在X86机器上一般为10个字节,而GCC将其存储为12个字节。

时间: 2024-08-26 10:25:21

C语言数据类型在IA32中的大小的相关文章

Java语言支持的8中基本数据类型

Java语言支持的8中基本数据类型是: byte(字节型).short(短整型).int(整型).long(长整型).float(单精度浮点型).double(双精度浮点型).boolean(布尔型).char(字符型) 具体可分为四类: 整型 byte short int long 浮点型 float double 逻辑型 boolean(它只有两个值可取 true false) 字符型 char 表格如下: 基本类型 占据空间大小 取值范围 默认值 boolean 不确定 true/fals

IOS成长中-C语言-数据类型(第一天)

定义常量分三部分:数据类型 变量名 = 初值    定义整型变量       变量名的命名规则:        1.变量名只能由数字,字母,下划线组成,并且数字不能开头.        2.不能和系统关键字重名.        3.具有自解释性,见名知意.        4.变量名不能重复.        5.变量名由多个单词组成时,除了首个单词首字母小写外,其他的单词首字母都要大写     int a = 10;     float b = 1.0;//用于注释一行.     char a =

一起talk C栗子吧(第一百五十二回:C语言实例--计算机中的大小端)

各位看官们,大家好,上一回中咱们说的是socket通信地址的例子,这一回咱们说的例子是:计算机中的大小端 .闲话休提,言归正转.让我们一起talk C栗子吧! 大小端据说来源于小说<格列佛游记>,书中说:人们在争论打开鸡蛋的方式是从鸡蛋的大端还是小端打开鸡蛋.争论不休,甚至还引起了战争.你说说,不管你从哪一端打开鸡蛋,打开的都是鸡蛋呀,这有什么可以争论的呢?还要通过战争来解决.大家不必关注这个争论,如果真想了解其中的细节,可以看看这部小说.不过在计算机中的大小端就不像小说中争论打开鸡蛋那么简单

04-C语言数据类型、常量、变量

一. 数据 1. 什么是数据 生活中时时刻刻都在跟数据打交道,比如体重数据.血压数据.股价数据等.在我们使用计算机的过程中,会接触到各种各样的数据,有文档数据.图片数据.视频数据,还有聊QQ时产生的文字数据.用迅雷下载的文件数据等. 2. 数据的分类 计算机中存储的数据可以分为两种:静态数据和动态数据. 1> 静态数据 l 概念:静态数据是指一些永久性的数据,一般存储在硬盘中.硬盘的存储空间一般都比较大,现在普通计算机的硬盘都有500G左右,因此硬盘中可以存放一些比较大的文件. l 存储的时长:

C语言结构体所占内存大小

用一道面试题题引入struct str1    {         char   a;         int    b;         float  c;     double d;  };char类型占用1个字节,int型占用4个字节,short类型占用2个字节,float占4字节,double占8字节:那么我们可能会犯一个错误就是直接1+4+2=7,认为该结构体占用7个字节.这是错的.百度一了下发现这是因为计算机中存在一种叫做内存对齐的机制导致了该结果的发生. 在计算机中通常会让CPU从

sizeof运算符来获取各种数据类型在内存中所占字节数--gyy整理

C++并没有规定各种数据类型在内存中的存储大小,依赖于不同的编译器的不同而不同,要想获知当前编译器对各种数据类型分配的大小,可以通过sizeof运算符来获取. 使用方法1: sizeof(数据类型)   使用方法2: sizeof(变量名   或 常量名 或 表达式  ) sizeof(int)      或 int  a: sizeof(a) [cpp] view plain copy //数据类型空间分配情况 #include <iostream> using namespace std;

C语言数据类型的理解

数据类型的定义: 作为一种语言,必然有所谓的语言组成要素,就像日常生活中人们之间的交流一样,首先会有字,字再成词组,再来就是句子,后来呢就是段落等等.当然不同的字,词,句这些在一起,就会有不同的表达效果,这也就好理解为何C语言会有相应的数据类型了.c语言数据类型如下图: 所谓数据类型是按被定义变量的性质,表示形式,占据存储空间的多少,构造特点来划分的. 在C语言中,数据类型可分为:基本数据类型,构造数据类型,指针类型,空类型 数据类型的标示意义: 数据类型的所占的字节数可以这样理解,当我们写作文

栈中空间大小

var a=1; var b=true; var o=new Object(); var f=new Function(); a和b在栈中开辟的空间大小不一样,因为两个的数据类型是不一样的,数据类型的本质就是开辟数据大小的一个模板 o和f在栈中空间大小是一样的,因为都是存堆空间地址的,跟堆空间大小没关系的

Go 语言数据类型

Go 语言数据类型 在 Go 编程语言中,数据类型用于声明函数和变量. 数据类型的出现是为了把数据分成所需内存大小不同的数据,编程的时候需要用大数据的时候才需要申请大内存,就可以充分利用内存. Go 语言按类别有以下几种数据类型: 序号 类型和描述 1 布尔型布尔型的值只可以是常量 true 或者 false.一个简单的例子:var b bool = true. 2 数字类型整型 int 和浮点型 float,Go 语言支持整型和浮点型数字,并且原生支持复数,其中位的运算采用补码. 3 字符串类