一个小问题

ninansky 2004-08-23 03:35:09
请问C++中定义位段的时候,下面的定义是不是错误的?
struct a
{
char b:10:
};
...全文
94 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
blh 2004-08-23
  • 打赏
  • 举报
回复
So the length of sruct a should be 8 bits.
blh 2004-08-23
  • 打赏
  • 举报
回复
There is a error in your definition. The length of char type is only 8 bits, but you appoint 10 bits for element b of struct a, you should change char type to unsigned int type.
qwertasdfg123 2004-08-23
  • 打赏
  • 举报
回复
肯定是8位。
它不能超出它的最大空间大小。
ninansky 2004-08-23
  • 打赏
  • 举报
回复
那这样的话它所占的空间是8位还是10位呢
hxblvc 2004-08-23
  • 打赏
  • 举报
回复
struct a
{
char b:10://决对是错的,首先这里应该以分号结终(呵呵)
};
如果写成这样:
struct a
{
char b:10;
};
没什么错.这个结构体的大小还是1个字节,和没写一样

64,642

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧