我有这段代码:
public uint StringsSize { get; set; }
byte[] buffer = new byte[(IntPtr) XSC.header.StringsSize];
返回以下错误:
“无法将类型'intptr'显式转换为'int'。显式 存在转换(您是否错过了演员?)“
任何关于解决这个问题的真正指导都会受到赞赏,这次使用这个工具会让我感到很困扰。 此外,如果这是一个重复的问题,我很抱歉,经过多次Google搜索,我无法找到简单的修复/解决方案。
答案 0 :(得分:2)
将IntPtr转换为int类型,如下所示:
var buffer = new byte[((IntPtr) XSC.header.StringsSize).ToInt64()];
答案 1 :(得分:0)
您可以尝试这样:
int numInt = intPtrVar.ToInt32();