c++ - 如何在 C/C++ 中将 unsigned char* 转换为 unsigned char 数组?
问题描述
我的函数看起来像这样:
void Example(const unsigned char* bytes)
{
unsigned char buffer[2048] = {0};
strcpy(buffer, bytes);
}
这不起作用。我该如何进行这项工作?
解决方案
你确实需要转换任何东西。如果你想从一个复制
void Example(const void *bytes, size_t len)
{
unsigned char buffer[2048];
memcpy(buffer, bytes, len);
/* ...*/
}
示例用法
int foo(void)
{
char str[] = "Hello world";
Example(str, sizeof(str));
}
推荐阅读
- excel - 是否有任何 REST API 用于在 OneDrive 云中创建新的 Excel (.xlsx) 文件
- powerquery - 使用大型 csv 文件作为数据源时如何加快 PowerQuery
- reactjs - 如何在 localStorage 中保存结帐数据并在订单完成使用 React Hooks 时将其删除?
- sql - 如何在 MSSQL 中获取最近 6 周的开始日期和结束日期
- cognos - 为 Cognos 设置仪表板过滤器的参数化 URL
- telegram - 电报机器人如何知道在哪里响应?
- azure - Azure 混合连接 - GatewayTimeout
- linux - 实现 wc 和 head 控件的功能
- django - 如何在 django models.py 中为用户名(不是用户 ID)创建 ForeignKey
- java - 在在线编译器 jdoodle.com 上运行 java 并遇到一些问题