【发布时间】:2013-03-30 00:30:13
【问题描述】:
这是我想要做的:
int64_t* h_out[ARRAY_SIZE];
int64_t result;
// some manipulations on h_out...
result = h_out[0] | h_out[1];
最后一行给出了这个错误:
error: expression must have integral or enum type
我不确定我是否理解错误的意思,但我猜它没有为int64_t 定义| 运算符。在谷歌上搜索这个错误时,出现了几个类似的问题,其中许多是因为% 运算符也没有为int64_t 定义。
那么...我如何对两个 64 位长整数进行比特运算?如果它需要特定于 GCC,我不关心可移植性,到目前为止它很简单。无论如何,这是一个玩具任务。
【问题讨论】:
-
希望你不是 C 程序员...
-
哦,酷 :) 我害怕了一会儿。
标签: c++ 64-bit bit-manipulation