我在OpenCL中有一个签名的char,我需要将其转换为unsigned char。
答案 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