是否将uint8

您所在的位置:网站首页 uint8_t转char 是否将uint8

是否将uint8

2022-12-17 04:15| 来源: 网络整理| 查看: 265

我有一个请求char*的API,这是我的API函数:

CANMessage(unsigned _id, const char* _data, char _len = 8)

欲了解更多信息,请访问:https://os.mbed.com/docs/mbed-os/v5.11/mbed-os-api-doxy/classmbed_1_1_c_a_n_message.html

我想从另一个函数中调用此函数,但我对const char*和强制转换感到困惑。我想从函数foo()调用此函数,如下所示:

void foo(unsigned int id, /*???*/ data, char len) { CANMessage(id, data, len) }

所以我需要把id,data和len传递给foo函数。我的问题是传入的data是uint8_t类型。我得到了一个uint8_t向量,其中第一个元素的地址是我需要传递的:

vector dta;

我尝试将其作为&dta[0]传递:foo(idNo, &dta[0], length)

foo函数如下:

void foo(unsigned int id, uint8_t* data, char len) { CANMessage(id, (char*)data, len) }

但我得到“std::uint8_t *类型的参数与char*类型的参数不兼容”

当调用它的函数foo接受uint8_t*时,如何将它作为const char*传递

请注意,我不能改变类型,dta必须保持vector。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3