Qt中的QByteArray和自定义结构体之间的相互转换
发表于|更新于|技术
|总字数:88|阅读时长:1分钟|浏览量:
在Qt项目开发中,经常会碰到自定义结构体和字符数组之间的转换问题,不妨假设结构体名字为custom_struct, 字符数组名字为array_data
1.QByteArray转换为自定义结构体
1 | custom_struct *struct_data = reinterpret_cast<custom_struct *>(array_data.data()); |
2.自定义结构体转换为QByteArray
1 | QByteArray array_data; |
文章作者: formeasy
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 易锦风的博客!
相关推荐

2025-02-06
QT5构建套件检测不到MSVC2017解决方法
前言 记录一下 QT5构建套件检测不到 MSVC2017 解决方法 。Qt Creator + MSVC开发环境搭建(Qt Creator 集成工具 + MSVC编译) 一、本地环境 电脑操作系统:Win11 Qt 版本:Qt 5.14.2 二、现象 如下图所示,MSVC2017 32bit 和 MSVC2017 64bit 的前面都有一个黄色的感叹号 将鼠标移至黄色感叹号的位置,可以看到警告信息为:工具包中没有设置编译器 三、解决办法 1、打开 Visual Studio Installer 2、点击修改 3、选择单个组件,勾选 MSVC v141-VS 2017 C++ x64/x86 Spectre 缓解库(v14.16) 和 MSVC v141-VS2017 C++ x64/x86生成工具(v14.16),选择修改 4、安装 msvc...

2025-06-13
Qt WebAssembly实验记录
1.安装及介绍 【Qt杂谈2.快速体验Qt for WebAssembly(Windows平台)】 【qt for webassembly环境搭建图文教程】 2.问题及解决方案 2.1.在C++中调用js函数 关于在wasm编译环境中,在c++中调用js,可以参考以下网址: 【emscripten.h】 【asm.js 和 Emscripten 入门教程】 【EM_JS : unable to free const char* in cpp】 2.2.中文无法显示(乱码): 【Qt for WebAssembly中文显示异常】 弄一个otf或者ttf字体文件,然后加到资源库中,然后 12//注意选择你自己的文件QFontDatabase::addApplicationFont(":/qml/Font/Alibaba-PuHuiTi-Light.otf"); 2.3.无法输入中文 好像没有有效的资料解决这个问题,所以我只能调用html的api了。(Qt6.8能够输入中文了,请看这篇文章的最后讨论【Unable to input Chinese...

2025-01-23
Qt5.14.2与VS2022配置
1.qt6要在线安装,安装时间比较长,要求网络要稳定,不适合快速安装 2.使用qt5.14.2离线安装包,安装速度快,可以快速安装。 3.安装完qt.5.14.2后打开QtCreate4.0.1,打开 工具->选项->Kits,发现如下图: 没有找到MSVC2017,安装qt时选择安装MSVC2017的, 4.打开Visual Studio Installer,确保VS2022已经安装MSVC2017 5.确保WindowSDK有安装 6.到qtcreate中 工具->选项->Debuggers,查看有没有调试器 如果没有,到控制面板->程序卸载,查找 右击->更改,勾选如下图 等待安装完成。 7.安装完成后,在qtcreate->工具->选项->kits->Debuggers中看到cdb.exe调试器 8.重新添加编译器 9.重新配置Kits中构建套件(Kit) 10.如果报错 原因 解决

2025-07-30
Qt5.14.2使用高版本QtCreator
1、安装Qt5.14.2 5.14.2是提供离线安装包的最后一个版本,它安装时是默认配上Qt Creator 4.11.1版本的。这个版本的QtCreator无法取消,不过占用空间不大,后续也不会用到它。按下面选项安装 2、安装QtCreator 1、获取最新版QtCreator 访问Qt官方网站, 下载对应环境版本,本人用的是Windows10 x64环境。另外,在线安装需要登录个人账号,这个要在Qt官网上提前注册。安装器下载成功后,启动并登录个人账号,快速进入安装选项。安装过程中,除了自定义那一步,其他时候能勾上的选项尽量都勾上。 2、安装选项 安装选项里,Qt会提供默认的安装配置,选择你想要的模式进行安装,然后一直下一步即可。本人只需要安装QtCreator,所以没有选择安装器推荐的开发工具选项,而是自定义。先选择顶部的无把所有选中取消,然后单独选择Qt Creator中的Qt Creator 16.0.2安装。 如果在出现了类似 主机XX没有找到...

2025-06-11
Qt5.15.2实现Qt for WebAssembly与示例
1.什么是Qt for WebAssembly? Qt for WebAssembly 是 Qt 框架的一个模块,它允许开发者将 Qt 应用程序编译为 WebAssembly(Wasm)格式,从而可以在现代 Web 浏览器中运行。WebAssembly 是一种低级的二进制指令格式,旨在为 Web 提供高性能的执行环境。通过 Qt for WebAssembly,开发者可以使用 Qt 的强大功能(如 GUI、网络、文件系统等)来构建跨平台的 Web 应用程序。 1.1 什么是 WebAssembly? WebAssembly(Wasm) 是一种基于堆栈的虚拟机的二进制指令格式,旨在为 Web 提供高性能的执行环境。 它允许开发者使用 C、C++、Rust 等语言编写代码,并将其编译为 Wasm 格式,在浏览器中运行。 WebAssembly 的主要目标是实现接近原生的性能,同时保持与 Web 平台的兼容性。 1.2 WebAssembly...

2025-06-13
Qt6.6搭建WebAssembly
1.首先安装python , 链接: https://www.python.org/ 2.下载并安装qt6. 3.克隆emsdk工程 3.1 进入emsdk目录,然后更新emsdk代码 3.2 下载并安装最新的SDK工具。(C:\Qt\emsdk>emsdk install --global latest) 3.3 激活:(C:\Qt\emsdk>emsdk activate latest) 3.4配置环境变量(C:\Qt\emsdk>emsdk_env.bat) 3.5检查是否成功:(C:\Qt\emsdk>em++ --version) 4.以上步骤如果不出错的话,打开qtcreator就可以看到该环境配置好了。 5.发布一个应用来看下吧
评论
公告
用学习,面对遭遇的变化;用斗志,面对每天的挫折;用坚持,面对失去的动力!




