C++学习笔记2,各基础类型及共用体的长度测试
来源:互联网 发布:大华电子称软件 编辑:程序博客网 时间:2024/06/05 21:06
一:在Windows下测试
//测试环境为Windows7 32bit,IDE为VS2010
测试源码:
#include <iostream>using namespace std;//基础类型及共用体测试union unionOne{//长度为1,无疑问char c;};union unionTwo{//长度=4,说明了共用体的长度是所有元素长度中长度最长那个变量的,无疑问char c;//sizeof(char)=1int number;//sizeof(int)=4};union unionThree{//长度为8,即double的长度,无疑问char c;int i;double d;};//结构体struct structZero//长度为1,无疑问{char c;};int main(){//基本类型测试cout<<"sizeof(int)="<<sizeof(int)<<endl;//4cout<<"sizeof(float)="<<sizeof(float)<<endl;//4cout<<"sizeof(double)="<<sizeof(double)<<endl;//8cout<<"sizeof(short)="<<sizeof(short)<<endl;//2cout<<"sizeof(char)="<<sizeof(char)<<endl;//1cout<<"sizeof(bool)="<<sizeof(bool)<<endl;//1cout<<"sizeof(true)="<<sizeof(true)<<endl<<endl;//1//可以看出,这里的指针的长度都是4cout<<"sizeof(int*)="<<sizeof(int*)<<endl;//4cout<<"sizeof(char*)="<<sizeof(char*)<<endl;//4cout<<"sizeof(double*)="<<sizeof(double*)<<endl;//4cout<<"sizeof(double**)="<<sizeof(double**)<<endl<<endl;//4//可以看出,union的长度即里面长度最大的成员的长度cout<<"sizeof(unionOne)="<<sizeof(unionOne)<<endl;//1cout<<"sizeof(unionTwo)="<<sizeof(unionTwo)<<endl;//4cout<<"sizeof(unionThree)="<<sizeof(unionThree)<<endl<<endl;//8cin.get();}
测试结果:
二:在fedora20/linux 64bit下测试
gcc version=4.8.2
可以看出,在Windows 32bit里面,指针是用4个字节来表示的,也就是4*8=32bit;
在linux 64bit里面,指针用8个字节表示,8*8=64,可以看出这里面的规律了吧。那么在16bit里面,是不是用16/8=2来表示的呢?
这个留给你们自己去测试吧。
0 0
- C++学习笔记2,各基础类型及共用体的长度测试
- [C学习]共用体,枚举类型与typedef
- C++学习笔记之六 复合类型之共用体
- 《零基础入门学习Python》学习过程笔记【016列表,元组,字符串的转化及共用技巧】
- C/C++学习笔记24:结构体与共用体
- C语言学习笔记-结构体、共用体、枚举
- 【C++】学习笔记八——共用体
- C语言共用体类型(union)
- 共用体类型,枚举类型的使用
- C语言基础(六)- 结构体、共用体、枚举和typeof自定义类型
- C语言基础之结构体、共用体、枚举、类型定义typedef
- 不同语言的变量类型及字节长度 (C & Java)
- /*测试数组的类型及指针类型所占的字节长度*/
- 【好程序员训练营学习笔记分享7】共用体和枚举类型
- Linux学习-共用体及typedef
- C++共用体类型数据的特点
- 数组、结构体和共用体的长度计算?
- C学习笔记 9 共用体内存分配
- PLSQL使用system用户连接:ORA-01031: insufficient privileges
- 赏金术士战队对阵90001战队 偷塔成功
- NYOJ 372 巧克力
- SQL存储过程笔记
- 轻量级持久存储系统 MemcacheDB
- C++学习笔记2,各基础类型及共用体的长度测试
- NYOJ 456 邮票分你一半
- VS2008中 .h头文件出现“fatal error RC1004: unexpected end of file found”问题
- Servlet容器Tomcat中web.xml中url-pattern的配置详解
- C++容器之array
- ARM中LDR伪指令与LDR加载指令
- 百度校招笔试题
- 矩阵在计算斐波那契数列的运用
- NYOJ 460 项链