无法弄清楚如何将 BYTE* 传递给此方法

标签 c byte

我正在尝试将变量传递给此函数:

void PutMem (ADDRESS, BYTE*, int);

我的代码如下所示:

while (wcounter < len)
    {
        container[0] = line[index];
        container[1] = line[index + 1];
        container[2] = '\0';



        PutMem(adr, &container, 0);

        wcounter++;
        index += 2;
        adr++;
    }

容器变量是一个无符号字符* 但我不知道如何让它成为函数接受的字节。

最佳答案

您的示例中没有提供,但我假设 BYTE 定义是标准的,在这种情况下,unsigned char 与“BYTE”相同。

首先,您应该了解该函数需要一个指向 BYTE 的指针,而不是一个 BYTE。其次,容器似乎是无符号字符数组,而不是无符号字符。这意味着您需要将其像 &container[0] 一样传递给 PutMem,但这也假设您始终想要第一个元素。

这是我能提供的最佳答案,无需更多细节。

关于无法弄清楚如何将 BYTE* 传递给此方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53643504/

相关文章:

java - 如何将数据转换为压缩十进制格式

c# - 如何以最有效的方式将图像转换为字符串?

c - 在 C 中发送的推荐 block 大小?

c++ - C++ 中的条件表达式总是 bool 类型吗?

go - 创建包含指针的 Go 结构的可重复字节数组

JavaScript:读取 8 字节到 64 位整数

java - 与字节转换为 int 感到困惑

c - 如何在 Xcode 中使用 C 重定向?

c - c中相同数据类型的多个数组的通用函数?

c - 使用 volatile 变量的示例 C 函数