CL12.clCreateImage()
的一个论点是包含此struct的ByteBuffer
。我将使用OpenCL kernel arguments中描述的方法传递结构但不确定对size_t
类型的参数使用什么。从Java中,当我将参数放入ByteBuffer
时,如果我使用的是32位系统或int
(带符号的64位),我应该使用long
(带符号的32位) )如果我使用的是64位?
答案 0 :(得分:-1)
size_t类型是“unsigned int”。你绝对可以使用int类型,但要确保它不是负数,否则没有意义。
考虑到上述情况时,您不必担心32位和64位系统,您不需要使用长
所以你可以做点什么
int param = value; //this is the value to pass
if (param >= 0) {
pclFunc((size_t)param)
} else {
//see how you want to handle this
}