您的位置: 首页 N搜咨询 文章阅读 C程式中关于整数储存的说明
打印本页 放大字体 关闭本页
C程式中关于整数储存的说明

作者:N搜网友 编辑:N搜网 录入:N搜网 来源:N搜网络
录入时间:2006-8-17 更新时间:2006-8-17 点击次数:666
主标题:C程式中关于整数储存的说明
副标题:C程式中关于整数储存的说明
短标题:C程式中关于整数储存的说明
 
    首先感谢玲对我的支持,在我最困难时是她帮助了我。声明一下,高手就不要看了,这篇文章只是随便写写,解决一些C编程新手的问题。
    废话少说先看程序:
    struct bit
    {
    unsigned a_bit:2;//为bit结构体中的a_bit成员分配两字节的空间
    unsigned b_bit:2;//为bit结构体中的b_bit成员分配两字节的空间
    unsigned c_bit:1;//为bit结构体中的c_bit成员分配两字节的空间
    unsigned d_bit:1;//为bit结构体中的d_bit成员分配两字节的空间
    unsigned e_bit:2;//为bit结构体中的e_bit成员分配两字节的空间
    unsigned word:8;
    }
    main()
    {
    struct bit * p;
    unsigned int modword;
    printf("enter..\n");
    scanf("%x",&modword);
    p=(struct bit * )&modword;
    printf("a_bit:%d\n",p->a_bit);
    printf("b_bit:%d\n",p->b_bit);
    printf("c_bit:%d\n",p->c_bit);
    printf("d_bit:%d\n",p->d_bit);
    printf("e_bit:%d\n",p->e_bit);
    }
    运行程序,输入96答案是
    a_bit:2
    b_bit:1
    c_bit:1
    d_bit:0
    e_bit:2
    scanf接收十六进制的96后在内存中的储存为二进制10010110,注意这里是unsigned形式,没有符号位。之后P指针被赋moduword的地址。由于P指针指向的空间是bit型,所以打印p->a_bit是既为modword的第一个两字节空间的值。按常理b_bit所占区域的值应该是二进制01,但是打印b_bit时输出的竟然2。我晕!!!
    情急之下我又试了95输出为1,1,1,,0,2再看97,输出3,1,1,0,2。渐渐明白了,原来在C编译器中以整形变量的右端作为低地址的。
    本文遇到的问题可能新手们会再次遇到,希望可以作为参考。
N搜网-中国网上商店商品服务搜索门户]:[本文章由N搜网于2006-8-17录入系统,网址:www.nsall.com

打印本页 放大字体 关闭本页
 
 
相关主题文章
C++中的const限定修饰符 C++中的虚函数(virtual function)
C++中确定基类有虚析构函数 C++中用vectors改进内存的再分配
C++中用函数模板实现和优化抽象操作 CBuilder中帮助文件的连接及显示讨论
CRC循环校验的具体算法 C标准中一些预定义的宏
C程式中关于整数储存的说明 C数值计算程序移植到VC开发环境
C语言初学者入门讲座 第八讲 转移语句 C语言初学者入门讲座 第二讲 数据类型(1)
C语言初学者入门讲座 第二讲 数据类型(2) C语言初学者入门讲座 第二讲 数据类型(3)
C语言初学者入门讲座 第九讲 数组(1) C语言初学者入门讲座 第九讲 数组(2)
C语言初学者入门讲座 第六讲 分支结构(1) C语言初学者入门讲座 第六讲 分支结构(2)
C语言初学者入门讲座 第七讲 循环结构 C语言初学者入门讲座 第三讲 基础语句
C语言初学者入门讲座 第十二讲 结构(1) C语言初学者入门讲座 第十二讲 结构(2)
C语言初学者入门讲座 第十二讲 结构(3) C语言初学者入门讲座 第十讲 函数(1)
C语言初学者入门讲座 第十讲 函数(2) C语言初学者入门讲座 第十讲 函数(3)
C语言初学者入门讲座 第十讲 函数(4) C语言初学者入门讲座 第十六讲 文件(1)
C语言初学者入门讲座 第十六讲 文件(2) C语言初学者入门讲座 第十三讲 联合
C语言初学者入门讲座 第十四讲 枚举与位运算(1) SNMP用VC++6.0实现的方法
XML在系统日志设计中的运用 利用VC++编写Windows95的CPL组件
利用VC++开发所见即所得的打印程序 利用VB自制OCX控件
利用Visual Basic 实现无线通讯 利用VC实现AVI文件的图像截取
利用VB实现宽行打印的一个技巧 调试Release版本应用程序
利用VC++编程实现程序自动启动 利用VB制作MP3播放列表
利用VC++开发ASP图像处理组件 利用VC++获取异构型数据库库结构信息
如何在ASP.Net 中把图片存入数据库 用TAPI为掌上电脑开发通讯应用程序
让窗口一直在上面 通过DELPHI小程序在WINDOWS下更好地使用DOS批处理…
用ASP实现的2000年倒记时程序 在vb组件内调用excel2000实现GIF饼图
用VB编写接近实际的抽奖程序 微软风格的Explore
在 C# 中使用画笔 用VB6分离出文本框的单词
如何拦截键盘输入 在VB5.0下有效控制鼠标的输入焦点
用VB5创建B/S程序 在ASP中用“正则表达式对象”来校验数据的合法性…
用VB实现局域网屏幕监视 用ASP实现网上考试系统
在ASP中利用“正则表达式” 对象实现UBB风格… [组图] 用Excel的宏编制个人证券账户管理器
用Powerbuilder进行分布式应用开发三级体系结构 在Asp.Net中从sqlserver检索(retrieve)图片
论游戏中的搜索问题(初级篇) 用VB调试串口通讯
使用API创建窗体(类似VC的创建过程) 用Delphi做一个OpenGL控件
如何在程序中使用自己的库单元 消息队列在VB.NET数据库开发中的应用
在VFP5.0中实现中英文自动切换 在BCB下使用GExperts的Debug功能
用FoxWeb在网上快速发布你的FOXPRO数据库 用VB6.0设计一个打字练习软件
在VFP中实现跟变式组合框及椭圆图形菜单 用Delphi合并Word表格中单元格
用BCB实现超星格式转换为BMP格式 拼图游戏的算法
在拷贝、删除文件时显示飞行的文件夹动画 在PB中如何使用Microsoft Outlook发送邮件
在PowerBuilder中调用ChooseColor函数 一个简单的MP3播放器
如何用pb实现MSACCESS数据库的图片字段存取 在C++Builder中使用Compress Html Help
压缩HTMl文件 在powerbuilder中向Excel传递数据
人民币大小写转换算法 在PB中应用灵活多样的排序
如何在程序启动默认浏览器与电子邮件系统 用C#编写获取远程IP,MAC的方法
用API实现在MSN的信息提示 真正意义上的前台窗口切换
如何在ASP程序中打印Access报表 如何在Windows应用程序中实现电子注册功能
上楼梯算法的java实现 实时曲线的绘制和保存
用Vb.net实现自定义界面 刘徽《九章算术》中的勾股数
ASCII码表 水仙花数
 
 
 
本站关键字:网上商店商品服务大全 网上购物导航 在线购物搜索引擎 网店比较购物 网络商城 特色网上超市商店 网上网络开店购物