c++ - 如何让 uint8_t const* 指向与 char* 相同的地址?

标签 c++ ns-3

在 C++ 程序中,我有一个 char* 指向包含 BUFFER_SIZE 个字符的数组的开头(每个字符的大小为一个字节)。 我现在想在 NS3 模拟中使用该代码,其中数据包将 uint8_t const* 作为输入,指向缓冲区。

我应该怎么做才能创建指向第一个提到的缓冲区的“uint8_t const*”?

最佳答案

您必须使用 reinterpret_cast:

int main () {
 char buffer[10];
 reinterpret_cast<unsigned char const *>(buffer);
}

或使用 C 风格的转换:

int main () {
 char buffer[10];
 (unsigned char const *)buffer;
}

关于c++ - 如何让 uint8_t const* 指向与 char* 相同的地址?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10095499/

相关文章:

linux - 终止管道中的上一个命令

c++ - C++ 中的 Scribble 是学习 MFC 的教程还是库、api 或其他东西?

c++ - 如何在模板函数中使用不同的结构作为模板参数?

c++ - 如何用OpenGl绘制动函数图?

c++ - FlowMonitor 不显示统计数据,但 PyViz 和跟踪文件显示它

c++ - 生成 (void *) 数据的 Hash Key

c++ - 简化重叠和条件语句

c++ - 对结构 vector 进行两次排序

linux - NS-3 dce 和 iperf3

ubuntu - 在 Ubuntu 上安装 NS-3 时出错