Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/163.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 未定义按位还是按位?_C++_64 Bit_Bit Manipulation - Fatal编程技术网

C++ 未定义按位还是按位?

C++ 未定义按位还是按位?,c++,64-bit,bit-manipulation,C++,64 Bit,Bit Manipulation,以下是我想做的: 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* 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,我不关心可移植性,因为它很简单。不管怎么说,这是一个玩具任务。

你包括了吗

#include <stdint.h>
#包括

您是否包括

#include <stdint.h>
#包括

h\u out[0]是指向
int64\u t
的指针,而不是
int64\u t
h\u out[0]是指向
int64\u t
的指针,不是
int64\u t

它是为
int64\u t
定义的,但不是为
int64\t*/code>定义的(指针)。

.

h\u out
是指向
int64\u t
的指针数组,因此
h\u out[0]
h\u out[1]
具有类型
int64\u t*
:不是整数类型,而是指针。也许你的意思是宣布它为

int64_t h_out[ARRAY_SIZE];

相反?

h\u out
是指向
int64\u t
的指针数组,因此
h\u out[0]
h\u out[1]
具有类型
int64\u t*
:不是整数类型,而是指针。也许你的意思是宣布它为

int64_t h_out[ARRAY_SIZE];

相反?

不,这不是问题所在。看看数组的声明。不,这不是问题所在。看看数组的声明。我希望你不是C程序员…哦,酷:)我害怕了一会儿。我希望你不是C程序员…哦,酷:)我害怕了一会儿。