CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C/C++ >  C语言

如何给这种成员赋值?

楼主windew(冬露)2003-12-01 13:53:47 在 C/C++ / C语言 提问

结构体定义如下:  
  typedef   struct   _SENSE_DATA   {  
          char   ErrorCode:4;  
          char   Valid:4;  
  }   SENSE_DATA,   *PSENSE_DATA;  
  现欲将ErrorCode赋为03h,如何进行?多谢! 问题点数:20、回复次数:14Top

1 楼hanyixin(怡)回复于 2003-12-01 14:03:56 得分 0

 
   
  直接赋值就可以了:  
   
   
  SENSE_DATA   sd;  
  sd.ErrorCode   =   3;  
   
  Top

2 楼windew(冬露)回复于 2003-12-01 14:11:21 得分 0

那如果结构体是这样定义的呢:  
  typedef   struct   _SENSE_DATA   {  
          char   ErrorCode:7;  
          char   Valid:1;  
  }   SENSE_DATA,   *PSENSE_DATA;  
  如何给这两个成员同时赋值呢?Top

3 楼dsao(神农)回复于 2003-12-01 14:15:16 得分 0

按位操作不就行了,关键是细心一点。Top

4 楼windew(冬露)回复于 2003-12-01 14:17:32 得分 0

请说出详细步骤!Top

5 楼blh(当你不割肉时,你的损失只是个数字,当你割肉时,你的损失就是你的肉)回复于 2003-12-01 14:28:24 得分 3

SENSE_DATA   a;  
  1.memset(&a,   val,   1);  
  2.   a   =   val;   (跟编译器有关)Top

6 楼windew(冬露)回复于 2003-12-01 14:32:01 得分 0

hanyixin的做法会使Valid中的值丢失。  
  老猫的做法,我没有看明白,val是什么?  
  Top

7 楼blh(当你不割肉时,你的损失只是个数字,当你割肉时,你的损失就是你的肉)回复于 2003-12-01 14:35:51 得分 0

你要赋的值Top

8 楼021850524(吸血鬼牌卫生巾)回复于 2003-12-01 14:37:24 得分 0

那算出这个字节的值后,把它给任意一个成员变量赋值.Top

9 楼windew(冬露)回复于 2003-12-01 14:40:14 得分 0

那如何接着对Valid进行赋值呢?Top

10 楼hanyixin(怡)回复于 2003-12-01 15:10:00 得分 0

 
  “使Valid中的值丢失”是什么意思呢?  
   
  Top

11 楼021850524(吸血鬼牌卫生巾)回复于 2003-12-01 15:28:42 得分 2

我在vc下试了,没什么问题呀,只要在赋值的时候注意不要超过位域的长度,成员变量的值就没问题.即使超出了,也不会影响到其它成员变量的值,只是把超出的部分给截了.Top

12 楼windew(冬露)回复于 2003-12-01 15:37:34 得分 0

难道在VC中,高字节在后?Top

13 楼hanyixin(怡)回复于 2003-12-02 08:34:18 得分 10

 
  高字节还是低字节在前是跟机器的体系结构有关的,跟VC没有关系。  
   
  Top

14 楼dsao(神农)回复于 2003-12-02 10:33:33 得分 5

高字节和低字节的问题是由于intel的cpu使用的little   endian   method.    
    要是像mac的big   endian就没这儿事了。Top

相关问题

  • 如何解决这种赋值问题?
  • 如何赋值!!!
  • 如何赋值
  • 【成员变量】如何给静态的 指向成员函数指针的变量 赋值
  • 求教如何对一个结构体中的局部静态成员变量赋值
  • 我想要改变窗口类成员hCursor,用SetClassLong如何给第三个参数赋值呢?
  • 如何赋值和处理???????
  • 如何给XML element赋值?
  • 如何赋值、调用?
  • c++builder中如何赋值?

关键词

  • 结构
  • 赋值
  • 成员
  • sense
  • 变量
  • errorcode
  • 值
  • valid
  • val
  • 问题

得分解答快速导航

  • 帖主:windew
  • blh
  • 021850524
  • hanyixin
  • dsao

相关链接

  • C/C++ Blog
  • C/C++类图书
  • C/C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo