解释一下。什么意思?

AlanBruce
企业官方账号
2010-04-20 04:54:08


CORBA::ULong type =

((int(argv[i][0]) << 24)
| (int(argv[i][1]) << 16)
| (int(argv[i][2]) << 8)
| int(argv[i][3]));



貌似是做类型订阅用的

但不是很了解!
...全文
72 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
十八道胡同 2010-04-20
  • 打赏
  • 举报
回复
CORBA::ULong type =

((int(argv[i][0]) << 24)
| (int(argv[i][1]) << 16)
| (int(argv[i][2]) << 8)
| int(argv[i][3]));

应该是argv的数组中的每一个位都有特定的意思,这样取出来就知道要做什么了
田暗星 2010-04-20
  • 打赏
  • 举报
回复
[Quote=引用楼主 zhoutanliang 的回复:]
C/C++ code
CORBA::ULong type =
((int(argv[i][0]) << 24)
| (int(argv[i][1]) << 16)
| (int(argv[i][2]) << 8)
| int(argv[i][3]));
貌似是做类型订阅用的
[/Quote]

你可以这样使用类型

(CORBA::ULong >>24)&0xFF 提取高位1
(CORBA::ULong >>16)&0xFF 提取高位2
(CORBA::ULong >>8)&0xFF 提取低位1
(CORBA::ULong )&0xFF 提取低位2
AlanBruce 2010-04-20
  • 打赏
  • 举报
回复
谢谢各位

我是想问做类型订阅的话怎么用呢???
zqlclj 2010-04-20
  • 打赏
  • 举报
回复
把四个参数封装到一个32位的类型中
codecola 2010-04-20
  • 打赏
  • 举报
回复
ip地址就可以这么表示吧
lylm 2010-04-20
  • 打赏
  • 举报
回复
就是移位+位运算吧
xiuxianshen 2010-04-20
  • 打赏
  • 举报
回复
把四个参数封装到一个32位的类型中啊,怎么啦?

64,683

社区成员

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

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