sizeof 32bit 64bit

原创 2012年03月29日 23:52:34
	printf("short:%d\n",sizeof(short)); 
	printf("double:%d\n",sizeof(double)); 
	printf("long double:%d\n",sizeof(long double)); 
	printf("long:%d\n",sizeof(long)); 
	printf("int:%d\n",sizeof(int)); 
	printf("float:%d\n",sizeof(float)); 
	printf("char:%d\n",sizeof(char)); 





只要是指针,包括char *,sizeof为4。

对数组名求sizeof时,不把它当指针看,sizeof为该数组实际分配的字节数,char[]类型数组也遵循这条规律,数组元素个数可通过初始化表隐形指定。

--------------------------------------------------------------------------------------------------------------------------------------------

以上讨论针对32bit cpu。 

32bit cpu 8字节的类型只有double、 long double和long long。

对于64bit cpu 指针和带一个long的类型变为原来的两倍,其他不变(包括double)。

运行结果如下:(分别用蓝色和红色标记了两者的差异)

——————————————————————————

机器平台:X86_64 处理器

操作系统:Red Hat 4.1.2-14

编译器: gcc version 4.1.2 20070626

Size of char is:                                   1

Size of unsigned char is:                     1

Size of signed char is:                  1

Size of int is:                                    4

Size of short is:                                2

Size of long is:                                  8

Size of long int is:                             8

Size of signed int is:                           4

Size of unsigned int is:                       4

Size of unsigned long int is:                8

Size of long long int is:                       8

Size of unsigned long long is:              8

Size of float is:                    4

Size of double is:                 8

Size of long double is:          16

Size of (void *) is:           8

Size of (char *) is:           8

Size of (int *) is:             8

Size of (long *) is:           8

Size of (long long *) is:   8

Size of (float *) is:          8

Size of (double *) is:              8

——————————————————————————

机器平台: X86_32 处理器

操作系统:  Windows XP SP2

编译器:    VS2005自带的C++编译器

Size of char is:                            1

Size of unsigned char is:              1

Size of signed char is:           1

Size of int is:                       4

Size of short is:                    2

Size of long is:                     4

Size of long int is:                4

Size of signed int is:             4

Size of unsigned int is:          4

Size of unsigned long int is:         4

Size of long long int is:                8

Size of unsigned long long is:       8

Size of float is:                    4

Size of double is:                 8

Size of long double is:          8

Size of (void *) is:          4    

Size of (char *) is:          4

Size of (int *) is:             4

Size of (long *) is:          4

Size of (long long *) is:   4

Size of (float *) is:          4

Size of (double *) is:       4

---------------------------------------------------------------

(1)空结构体或类,sizeof大小为1

(2)c++中静态成员存放在全局数据区,sizeof计算栈中分配大小,故不包含在内

(3)char数组作为sizeof参数时不退化,作为strlen参数时退化为char *

(4)数组作为函数形参时,退化为指针,故其sizeof返回指针长度



版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

32位机和64位机下面各类型sizeof的大小

运行结果如下:(分别用蓝色和红色标记了两者的差异)   —————————————————————————— 机器平台:X86_64 处理器 操作系统:Red Hat 4.1.2-14 编译...

C/C++中sizeof()的用法——32位和64位下的sizeof()

机器平台:X86_64 处理器 操作系统:Red Hat 4.1.2-14 编译器: gcc version 4.1.2 20070626     Size of char is:   ...

sizeof在32位和64位机器上的运行结果

机器平台:X86_64 处理器 操作系统:Red Hat 4.1.2-14 编译器: gcc version 4.1.2 20070626     Size of c...

sizeof与lstrlen的差别 32位和64位下sizeof有什么不同

1、何为32位?何为64位? 32位和64位实际上指的是CPU的架构,也就是CPU单条指令能够处理的位数,32位的CPU一次处理32位(也就是4个字节)长度,64位的CPU一次能够处理64位(也就是...

Ubuntu 12.04 64bit 无法安装ia32-libs 解决方法

错误信息: Html代码   junior@mediacenter:~$ sudo apt-get install ia32-libs   Reading package l...

win8 32/64bit VS2012 OpenCV 2.4.9 环境配置(win7 win10通用)

win8 32/64bit VS2012 OpenCV 2.4.9 环境配置 资料下载: OpenCV 2.4.9下载地址:http://sourceforge.net/projects/o...

window32/64bit下的redis安装包

  • 2017-08-02 10:23
  • 5.68MB
  • 下载

minidwep(32ibt+64bit).zip

  • 2017-05-18 15:19
  • 365KB
  • 下载

Android——APK 在32bit/64bit平台 动态库问题

目前64bit android系统也慢慢的多了,看到也有apk声称支持64bit system,然后就往里面打包搞了个arm64-v8a 目录,放了个64bit的so,但是apk代码里面却不按规范去l...
  • jscese
  • jscese
  • 2015-08-04 18:46
  • 8202
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)