如何在OpenCL中将signed转换为unsigned char?

时间:2012-03-28 03:15:44

标签: c casting opencl

我在OpenCL中有一个签名的char,我需要将其转换为unsigned char。

2 个答案:

答案 0 :(得分:1)

OpenCL标准为所有内置标量和矢量类型定义explicit conversion functions。所以你可以这样做:

char signed_val = 10;
uchar unsigned_val = convert_uchar(signed_val);

答案 1 :(得分:0)

类似C的铸造应该有效。唯一的区别是你使用cl_类型。但这些等同于C类型。

例如,要将signed转换为unsigned char:

cl_char c   = 0xF;
cl_uchar uc = c;

将指向signed char的指针转换为指向unsigned char的指针:

cl_char* cArr   = // Points to char array
cl_uchar* ucArr = ( cl_uchar* ) cArr; // Access char array as uchar array