gpt4 book ai didi

c# - const uint8* 的 C++ 到 C# 转换

转载 作者:行者123 更新时间:2023-11-30 03:28:37 25 4
gpt4 key购买 nike

有没有办法转换这个:

function (const uint8* ptra, long src)
{

const uint8* ptrb = ptra + src;
}

我已经尝试将每个 const uint* 转换为 byte[],但我不确定如何处理 ptra + src。谢谢

最佳答案

在 C# 中,这通常不是最好的方法,但它确实专门回答了您的问题。您可以使用 unsafefixed 关键字,如下所示:

public unsafe void DoSomething(byte[] data, long src)
{
fixed (byte* ptra = data)
{
byte* ptrb = ptra + src;
// do your work... e.g.
// ptrb[0] = 10;
// ...is equivalent to...
// data[src] = 10;
}
}

要使用这种方法,您必须将代码编译为“不安全”。如果您使用的是 Visual Studio,则可以在解决方案资源管理器中右键单击项目节点并选择“属性”。在属性页面的构建选项卡下,选中“允许不安全代码”框。

关于c# - const uint8* 的 C++ 到 C# 转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46458806/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com