首页
社区
课程
招聘
[求助] std::operator|(8LL, 4LL);
发表于: 2015-10-15 13:36 3584

[求助] std::operator|(8LL, 4LL);

2015-10-15 13:36
3584
IDA逆向C++  ,F5语句 std::operator|(8LL, 4LL);是什么意思,有什么意义?

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (4)
雪    币: 2332
活跃值: (3709)
能力值: ( LV9,RANK:140 )
在线值:
发帖
回帖
粉丝
2
我去...你这是发现一个问题就发一个贴的节奏么~~~

std::operator|()
的意思是,对operator|的重载.
通俗点说就是对算数或的重载.
a = 1|0;
open('a.txt', 'wb', ofstream::binary|ofstream::out)
都是算数或运算...........
2015-10-15 15:25
0
雪    币: 18
活跃值: (26)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
3
你好,这个重载‘或’,我是想知道这个语句的意义是什么,8|4有什么特殊的意义吗,在程序中总能看到
2015-10-15 15:59
0
雪    币: 2332
活跃值: (3709)
能力值: ( LV9,RANK:140 )
在线值:
发帖
回帖
粉丝
4
就是将8LL这个参数或4LL这个参数,然后返回或的结果.其实就是一次函数调用.

8LL和4LL是参数类型的描述.一般来说LL代表的是long long类型.至于前面的数字就不知道何以了,论坛里的其他牛可以给解答一下.
我不知道你这个结果是如何获得的,我刚才写了一个测试的程序,ida对operator|的F5结果不是你的样子:

__int64 __fastcall operator|(__int64 a1, int a2)
{
  return (unsigned int)(*(_DWORD *)a1 + a2);
}
2015-10-15 16:33
0
雪    币: 18
活跃值: (26)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
5
猜测这应该是固定模式代表特定含义的,非常感谢
2015-10-15 16:48
0
游客
登录 | 注册 方可回帖
返回
//