You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将LARGE_INTEGER*赋值给LARGE_INTEGER?求解决方案

解决LARGE_INTEGER指针到值类型的赋值问题

嘿,我明白你遇到的困扰了!你现在的问题是把指针类型的LARGE_INTEGER*直接赋值给值类型的LARGE_INTEGER,直接强制转换是行不通的——因为指针本质是内存地址,不是结构体本身的数据,编译器当然会报错。

正确的做法是解引用指针

你只需要通过*操作符获取指针指向的实际结构体实例,就能完成赋值:

Dir->Siz = *Siz;

这里的*Siz会读取指针Siz指向的内存中的LARGE_INTEGER结构体数据,然后完整拷贝给Dir->Siz,完全符合类型要求。

额外提醒:处理空指针情况

如果Siz有可能是NULL(空指针),一定要先做检查,避免程序崩溃:

if (Siz != nullptr) {
    Dir->Siz = *Siz;
} else {
    // 可以根据需求初始化Dir->Siz,比如设为0
    Dir->Siz.QuadPart = 0;
}

毕竟LARGE_INTEGER是一个联合类型,包含LowPart、HighPart和QuadPart成员,解引用赋值会把所有成员的数据都正确拷贝过去,这正是你需要的效果。

内容的提问来源于stack exchange,提问作者kishoredbn

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 07:24:34