使用C ++中的cout以十六进制格式打印OpenCL cl_uchar?

时间:2011-12-02 00:36:04

标签: c++ hex opencl cout

我正在尝试验证指针是否到位,并且我想以十六进制格式打印cl_uchar(unsigned char OpenCL类型)的值。我试过了:

cout << "Data matrix 0,3 = " << clMatrixPerm->data_matrix->elements[4] << endl;

cout << "Data matrix 0,3 = " << hex << clMatrixPerm->data_matrix->elements[4] << endl;

其中clMatrixPerm->data_matrix->elements[4]是要打印的数组中的数据。在这两种情况下,Data matrix 0,3 =之后都没有输出。我能够使用printf的解决方法,所以我知道数据正确分配,但我想尽可能使用cout打印它。

1 个答案:

答案 0 :(得分:1)

简单

cout << "Data matrix 0,3 = " << hex << static_cast<unsigned int>(clMatrixPerm->data_matrix->elements[4]) << endl;