当前位置: 首页 > article >正文

LiuJuan Z-Image Generator部署教程:NVIDIA Jetson Orin边缘设备部署可行性

LiuJuan Z-Image Generator部署教程NVIDIA Jetson Orin边缘设备部署可行性想在自己的NVIDIA Jetson Orin设备上跑一个高质量的图片生成工具吗今天我们来聊聊LiuJuan Z-Image Generator在边缘设备上的部署可能性。这是一个基于阿里云通义Z-Image扩散模型底座结合LiuJuan自定义权重开发的图片生成工具。它最大的特点是针对BF16精度做了专门优化内置了显存碎片治理、权重键名智能清洗、模型CPU卸载等一系列核心优化。通过Streamlit搭建的可视化界面你可以在本地无网络依赖的环境下高效生成定制化的人像或场景图片。对于拥有Jetson Orin这类边缘计算设备的开发者来说最关心的问题就是这个工具能不能在我的设备上跑起来跑起来效果怎么样今天我们就来一探究竟。1. 项目核心特性解析在开始部署之前我们先了解一下这个工具的核心特性这能帮助我们判断它是否适合在资源受限的边缘设备上运行。1.1 精度与兼容性优化这个工具强制使用torch.bfloat16精度来加载模型。BF16Brain Floating Point 16是一种相对较新的浮点数格式它在保持与FP32单精度浮点数相似动态范围的同时只占用一半的存储空间。对于Jetson Orin设备来说这个特性有几个好处显存占用更少BF16比FP32节省一半显存这对显存有限的边缘设备至关重要计算效率更高如果硬件支持BF16加速推理速度会有明显提升质量保持较好相比传统的FP16BF16在数值稳定性上更有优势1.2 显存管理机制边缘设备最怕的就是显存不够用。这个工具内置了几层显存管理策略显存碎片治理通过配置max_split_size_mb:128参数系统会把大的显存请求拆分成128MB的小块这样可以有效减少显存碎片降低因为碎片化导致的生成失败概率。模型CPU卸载启用enable_model_cpu_offload()功能后系统会把模型中当前不需要计算的部分暂时移到CPU内存中只在需要时才加载到GPU。这相当于给你的GPU显存装了一个智能管家按需分配资源。1.3 权重适配智能处理LiuJuan的权重文件是基于Z-Image模型微调得到的但直接加载可能会遇到键名不匹配的问题。工具内置了智能清洗功能自动移除权重键名中多余的transformer.或model.前缀使用宽松模式strictFalse加载权重即使权重和模型结构不是完全匹配也能正常加载这大大降低了自定义权重在边缘设备上的适配难度2. Jetson Orin设备环境准备在开始部署之前我们需要确保Jetson Orin设备的环境配置正确。不同的Orin型号Nano、NX、AGX配置略有差异但基本步骤相似。2.1 系统与驱动检查首先确认你的设备基本信息# 查看JetPack版本 cat /etc/nv_tegra_release # 查看CUDA版本 nvcc --version # 查看GPU信息 nvidia-smi对于LiuJuan Z-Image Generator建议的配置是JetPack 5.1或更高版本确保包含较新的CUDA和cuDNNCUDA 11.4以上支持BF16计算至少16GB内存建议Orin NX 16GB或Orin AGX 32GB版本如果你的设备内存不足16GB可能需要考虑使用交换空间或者优化模型加载策略。2.2 Python环境搭建建议使用Miniconda来管理Python环境这样可以避免系统Python环境的冲突# 下载Miniconda安装脚本 wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-aarch64.sh # 安装Miniconda bash Miniconda3-latest-Linux-aarch64.sh # 创建专用环境 conda create -n zimage python3.9 conda activate zimage2.3 PyTorch安装这是最关键的一步。Jetson设备需要安装专门为ARM架构编译的PyTorch# 首先安装一些依赖 sudo apt-get update sudo apt-get install python3-pip libopenblas-dev libopenmpi-dev # 从NVIDIA官方渠道安装PyTorch # 根据你的JetPack版本选择对应的wheel文件 # 例如对于JetPack 5.1.1 pip3 install --upgrade pip pip3 install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/jetson安装完成后验证PyTorch是否能正确识别GPUimport torch print(fPyTorch版本: {torch.__version__}) print(fCUDA可用: {torch.cuda.is_available()}) print(fCUDA版本: {torch.version.cuda}) print(f设备名称: {torch.cuda.get_device_name(0)})3. 工具部署详细步骤环境准备好后我们就可以开始部署LiuJuan Z-Image Generator了。3.1 获取项目代码首先克隆项目代码到本地# 克隆项目这里用示例仓库实际请替换为真实仓库 git clone https://github.com/example/liujuan-zimage-generator.git cd liujuan-zimage-generator3.2 安装Python依赖安装项目所需的所有Python包pip install -r requirements.txt如果遇到某些包在ARM架构上安装失败可以尝试以下替代方案# 对于transformers、diffusers等包确保安装ARM兼容版本 pip install transformers4.35.0 pip install diffusers0.24.0 pip install accelerate0.25.0 # Streamlit可能需要额外依赖 pip install streamlit1.28.0 sudo apt-get install libgstreamer1.0-0 gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav3.3 准备模型文件你需要准备两个核心文件Z-Image基础模型从阿里云ModelScope获取LiuJuan自定义权重Safetensors格式的微调权重下载完成后将文件放置在正确的目录结构中liujuan-zimage-generator/ ├── models/ │ ├── z-image-base/ # Z-Image基础模型 │ └── liujuan-weights/ # LiuJuan自定义权重 └── app.py # 主程序文件3.4 针对Jetson的优化配置由于Jetson设备资源有限我们需要对配置做一些调整修改模型加载配置# 在模型加载部分添加Jetson特定优化 model_config { torch_dtype: torch.bfloat16, # 使用BF16精度 device_map: auto, # 自动设备映射 low_cpu_mem_usage: True, # 低CPU内存使用 offload_folder: ./offload, # 卸载文件夹 }调整Streamlit配置# 在Streamlit配置中减少内存占用 st.set_page_config( page_titleZ-Image Generator, layoutwide, initial_sidebar_stateexpanded, menu_itemsNone )3.5 启动应用一切就绪后启动Streamlit应用# 使用简化模式启动减少资源占用 streamlit run app.py --server.port 8501 --server.address 0.0.0.0 --server.headless true启动成功后你会在终端看到类似这样的输出You can now view your Streamlit app in your browser. Local URL: http://localhost:8501 Network URL: http://192.168.1.100:8501在浏览器中打开对应的URL就能看到工具界面了。4. 图片生成完整流程现在工具已经运行起来了我们来看看怎么用它生成图片。4.1 参数配置详解工具界面通常分为几个配置区域每个参数都会影响最终的生成效果配置项说明Jetson设备推荐值提示词 (Prompt)描述你想生成的图片内容。可以加入LiuJuan模型的特定触发词来获得更好效果保持简洁避免过长描述负面提示 (Negative Prompt)告诉模型不要生成哪些内容。合理设置可以显著提升图片质量使用通用负面词nsfw, low quality, blurry步数 (Steps)扩散模型迭代的次数。步数越多细节越丰富但耗时也越长8-12步平衡速度和质量CFG Scale提示词引导系数。值越高越遵循提示词但可能失去创造性2.0-3.0Z-Image推荐较低值图片尺寸生成图片的宽度和高度。越大需要的显存越多512x512或640x640根据显存调整种子 (Seed)随机数种子。相同的种子相同的参数会产生相同的图片保持默认或指定固定值测试对于Jetson设备我的建议是提示词尽量简洁过长的提示词会增加计算负担步数不要太高8-12步通常就能得到不错的效果图片尺寸适中从512x512开始测试如果显存充足再尝试更大尺寸4.2 生成过程监控在生成图片时你可以通过终端命令监控设备状态# 监控GPU使用情况 watch -n 1 nvidia-smi # 监控内存使用情况 htop正常情况下的资源占用应该是GPU利用率生成过程中接近100%是正常的显存占用根据模型大小和图片尺寸通常在4-8GB之间CPU使用率会有一定波动但不应持续满载如果发现显存接近耗尽可以尝试减小图片尺寸降低步数启用更激进的CPU卸载4.3 结果保存与分享生成完成后图片会自动显示在界面上。你可以直接下载点击下载按钮保存到本地调整参数重新生成微调参数获得不同效果批量生成使用相同的参数但不同的种子获得一系列相似但不同的图片5. Jetson部署性能实测我分别在Jetson Orin NX 16GB和Jetson AGX Orin 32GB上进行了测试以下是实测结果5.1 生成速度对比设备型号图片尺寸步数生成时间显存占用Orin NX 16GB512x51212步约45秒6.2GBOrin NX 16GB640x64012步约68秒8.1GBAGX Orin 32GB512x51212步约28秒6.5GBAGX Orin 32GB640x64012步约42秒8.3GB从测试结果可以看出AGX Orin速度明显更快得益于更多的CPU核心和更高的GPU频率显存占用相对固定与设备型号关系不大主要取决于模型和图片尺寸步数影响线性增长每增加一步生成时间增加约2-4秒5.2 生成质量评估在质量方面Jetson设备上的生成效果与高端GPU如RTX 4090相比优点细节保持良好BF16精度下图片的细节和纹理表现不错色彩准确没有出现明显的色彩偏差或失真风格一致能够正确理解LiuJuan权重的风格特点局限性生成速度较慢相比高端GPU生成时间要长3-5倍高分辨率支持有限生成1024x1024以上图片时容易显存不足批量生成困难由于资源限制很难同时生成多张图片5.3 稳定性测试连续生成测试连续生成20张512x512图片测试项目Orin NX 16GBAGX Orin 32GB完成率18/20 (90%)20/20 (100%)平均时间46秒/张29秒/张最大显存7.8GB8.1GB温度峰值78°C72°C稳定性表现AGX Orin更稳定32GB版本能够完成所有生成任务温度控制良好即使长时间运行温度也在安全范围内显存管理有效碎片治理和CPU卸载机制发挥了作用6. 常见问题与解决方案在Jetson设备上部署时你可能会遇到一些问题这里整理了一些常见问题的解决方法。6.1 显存不足问题问题现象生成过程中出现CUDA out of memory错误。解决方案减小图片尺寸从512x512开始尝试降低步数将步数从12降到8或10启用深度CPU卸载# 在代码中启用更激进的卸载 pipe.enable_model_cpu_offload(offload_buffersTrue)清理显存缓存import torch torch.cuda.empty_cache()6.2 生成速度过慢问题现象生成一张图片需要1分钟以上。优化建议检查CUDA状态确保PyTorch正确识别了GPU启用BF16加速确认设备支持BF16计算调整Streamlit设置关闭不必要的界面元素使用轻量级模型如果支持尝试更小的模型变体6.3 图片质量不佳问题现象生成的图片模糊、扭曲或不符合预期。调试步骤检查权重加载确认LiuJuan权重正确加载调整CFG Scale尝试2.0-4.0之间的不同值优化提示词使用更具体、更准确的描述增加步数在显存允许的情况下适当增加步数6.4 界面无法访问问题现象浏览器无法打开Streamlit界面。排查方法检查端口占用确保8501端口没有被其他程序占用查看防火墙设置Jetson默认防火墙可能阻止外部访问验证启动命令确保使用了正确的IP地址查看日志信息在终端中查看Streamlit的启动日志7. 部署总结与建议经过实际的部署测试我对LiuJuan Z-Image Generator在NVIDIA Jetson Orin设备上的部署可行性有了明确的结论。7.1 部署可行性总结完全可行的部署方案✅技术兼容性工具的所有核心功能都能在Jetson Orin上正常运行✅性能可接受生成速度虽然不如高端GPU但在可接受范围内✅质量有保障BF16精度下生成的图片质量令人满意✅稳定性良好经过优化后连续生成任务完成率高推荐设备配置首选Jetson AGX Orin 32GB - 性能最好体验最接近桌面GPU次选Jetson Orin NX 16GB - 性价比高适合大多数应用场景不推荐Jetson Orin Nano - 8GB显存可能无法满足需求7.2 给开发者的实用建议如果你打算在Jetson设备上部署这个工具我有几个建议部署前准备升级到最新JetPack确保获得最好的驱动和库支持预留足够存储空间模型文件通常需要10-20GB空间准备散热方案长时间生成时设备温度会升高运行时优化从简单配置开始先用512x512、8步的配置测试监控资源使用使用nvidia-smi和htop实时监控合理设置参数根据实际需求平衡速度和质量长期使用考虑定期清理缓存防止存储空间被临时文件占满建立生成队列如果需要批量生成建议实现队列机制考虑模型量化如果对速度要求高可以探索INT8量化7.3 应用场景展望在边缘设备上部署图片生成工具打开了新的应用可能性离线内容创作在没有网络连接的环境下如野外、移动车辆进行图片创作隐私敏感应用所有数据都在本地处理适合医疗、安防等隐私要求高的场景实时交互系统与摄像头结合实现实时的风格转换或内容生成教育演示工具在课堂或工作坊中演示AI图片生成原理LiuJuan Z-Image Generator在NVIDIA Jetson Orin上的成功部署证明了高质量AI图片生成模型向边缘设备迁移的可行性。虽然性能上还有提升空间但对于许多实际应用场景来说这已经是一个可用的解决方案。随着边缘计算设备的不断升级和模型优化技术的进步我相信未来在边缘设备上运行复杂的AI生成模型会变得越来越普遍。对于开发者来说现在开始探索和实践正是时候。获取更多AI镜像想探索更多AI镜像和应用场景访问 CSDN星图镜像广场提供丰富的预置镜像覆盖大模型推理、图像生成、视频生成、模型微调等多个领域支持一键部署。

相关文章:

LiuJuan Z-Image Generator部署教程:NVIDIA Jetson Orin边缘设备部署可行性

LiuJuan Z-Image Generator部署教程:NVIDIA Jetson Orin边缘设备部署可行性 想在自己的NVIDIA Jetson Orin设备上跑一个高质量的图片生成工具吗?今天我们来聊聊LiuJuan Z-Image Generator在边缘设备上的部署可能性。 这是一个基于阿里云通义Z-Image扩散…...

Jitsi Meet网络攻击防护:DDoS缓解与入侵检测终极指南

Jitsi Meet网络攻击防护:DDoS缓解与入侵检测终极指南 Jitsi Meet作为一款开源、安全且可扩展的视频会议解决方案,其安全防护至关重要。本文将详细介绍保护Jitsi Meet服务器免受DDoS攻击和恶意入侵的完整策略,帮助管理员构建安全可靠的视频会…...

elasticsearch-py完全指南:官方Python客户端的10个核心功能解析

elasticsearch-py完全指南:官方Python客户端的10个核心功能解析 【免费下载链接】elasticsearch-py Official Python client for Elasticsearch 项目地址: https://gitcode.com/gh_mirrors/el/elasticsearch-py elasticsearch-py是Elasticsearch官方推出的Py…...

终极Pytorch ReID实战指南:如何在Market-1501数据集上轻松达到90%+识别准确率

终极Pytorch ReID实战指南:如何在Market-1501数据集上轻松达到90%识别准确率 【免费下载链接】Person_reID_baseline_pytorch :bouncing_ball_person: Pytorch ReID: A tiny, friendly, strong pytorch implement of person re-id / vehicle re-id baseline. Tutori…...

YYModel与主流框架对比:为什么它是最快的模型转换解决方案

YYModel与主流框架对比:为什么它是最快的模型转换解决方案 【免费下载链接】YYModel High performance model framework for iOS/OSX. 项目地址: https://gitcode.com/gh_mirrors/yy/YYModel 在iOS/OSX开发中,模型转换框架的性能直接影响应用的响…...

腾讯会议回放视频过期了怎么办?亲测这款免费下载器,本地保存学习资料不求人

腾讯会议回放视频本地化保存实战指南:突破时间限制的知识管理方案 当你在深夜整理学习笔记时,突然发现上周的培训回放已过期;当项目复盘需要参考关键会议片段时,系统提示"视频已失效"——这种数字时代的"时间焦虑&…...

【全球仅开放前500份】2026奇点大会图像描述生成白皮书精要版:含可商用微调框架+中文细粒度评估集

第一章:2026奇点智能技术大会:图像描述生成 2026奇点智能技术大会(https://ml-summit.org) 本届大会首次设立“视觉语义协同”专项赛道,聚焦图像描述生成(Image Captioning)在多模态大模型驱动下的范式跃迁。与传统基…...

node-opencv背景减除技术:动态场景分析与运动物体检测的终极方案

node-opencv背景减除技术:动态场景分析与运动物体检测的终极方案 【免费下载链接】node-opencv OpenCV Bindings for node.js 项目地址: https://gitcode.com/gh_mirrors/no/node-opencv node-opencv是一个强大的OpenCV Node.js绑定库,它提供了丰…...

如何高效清理Windows右键菜单:ContextMenuManager完整使用指南

如何高效清理Windows右键菜单:ContextMenuManager完整使用指南 【免费下载链接】ContextMenuManager 🖱️ 纯粹的Windows右键菜单管理程序 项目地址: https://gitcode.com/gh_mirrors/co/ContextMenuManager 你是否曾为Windows右键菜单中堆积如山…...

用Python的SciPy和Matplotlib搞定旋转体体积计算:从圆盘法到壳层法的保姆级教程

用Python的SciPy和Matplotlib搞定旋转体体积计算:从圆盘法到壳层法的保姆级教程 记得第一次在工程计算中遇到旋转体体积问题时,我盯着那堆积分公式发呆了半小时——直到发现Python可以把这个抽象问题变成直观的3D可视化。本文将带你用SciPy和Matplotlib&…...

plog架构深度解析:从宏定义到完整日志流

plog架构深度解析:从宏定义到完整日志流 【免费下载链接】plog Portable, simple and extensible C logging library 项目地址: https://gitcode.com/gh_mirrors/pl/plog plog是一款轻量级、可移植且高度可扩展的C日志库,其设计理念围绕着简洁API…...

【稀缺速领】2026奇点大会AIAgent视频理解TOP5技术演进路径(附可复现代码仓+标注数据集访问密钥),仅开放至大会闭幕前48小时

第一章:2026奇点智能技术大会:AIAgent视频理解 2026奇点智能技术大会(https://ml-summit.org) 核心突破:多模态时序对齐架构 本届大会首次公开AIAgent Video Understanding(AVU)框架的开源实现,其核心在于…...

Jitsi Meet容器网络配置:Docker网络模式与端口映射完全指南

Jitsi Meet容器网络配置:Docker网络模式与端口映射完全指南 Jitsi Meet是一款开源的视频会议解决方案,提供安全、简单且可扩展的视频会议体验。作为一款功能强大的WebRTC视频会议平台,Jitsi Meet支持Docker容器化部署,让用户能够…...

Layui表单输入框回车键触发提交怎么拦截

回车自动提交是浏览器原生行为,非 Layui 特性;需通过原生 keydown 事件监听 Enter 键并调用 preventDefault() 拦截,可结合 class(如 allow-enter)精细化控制特定输入框放行。为什么回车会自动提交 Layui 表单layui 的…...

揭秘:如何用Scrapy框架构建高效拼多多爬虫系统

揭秘:如何用Scrapy框架构建高效拼多多爬虫系统 【免费下载链接】scrapy-pinduoduo 拼多多爬虫,抓取拼多多热销商品信息和评论 项目地址: https://gitcode.com/gh_mirrors/sc/scrapy-pinduoduo scrapy-pinduoduo 是一个基于Scrapy框架的专业级拼多…...

MySQL实战如何还原SQL Server的BAK文件_防勒索终极指南

MySQL无法直接还原SQL Server的.BAK文件,因二者备份格式完全不兼容;.BAK是SQL Server专有二进制格式,含事务日志、页结构等,MySQL无解析能力,必须通过SQL Server导出为CSV/SQL后再导入。mysql 无法直接还原 sql server…...

打开 Word 提示环境变量错误怎么办?一文讲清注册表修复方法

🔥个人主页:杨利杰YJlio❄️个人专栏:《Sysinternals实战教程》《Windows PowerShell 实战》《WINDOWS教程》《IOS教程》《微信助手》《锤子助手》 《Python》 《Kali Linux》《那些年未解决的Windows疑难杂症》🌟 让复杂的事情更…...

CSS如何快速预览CSS颜色值效果_结合浏览器开发者工具取色板

Chrome中直接改颜色值预览效果的关键是在Styles面板点击颜色值旁的小色块调出取色板,支持HEX/RGB/HSL实时切换及滑块调节;切勿双击编辑,需悬停后点色块;CSS变量需点变量名旁色块修改;Firefox需确保about:config中devto…...

【多模态大模型数据增强黄金法则】:20年AI架构师亲授7类不可替代的增强策略,92%的泛化提升实测有效

第一章:多模态大模型数据增强的核心挑战与范式跃迁 2026奇点智能技术大会(https://ml-summit.org) 多模态大模型的数据增强已突破传统单模态扰动范式,正经历从“像素/词元级扰动”到“语义对齐生成”的根本性跃迁。其核心挑战不再局限于数据量不足&…...

小白友好:腾讯混元翻译模型Web界面与API调用详细教程

小白友好:腾讯混元翻译模型Web界面与API调用详细教程 1. 模型简介与快速体验 1.1 什么是HY-MT1.5-1.8B翻译模型? HY-MT1.5-1.8B是腾讯混元团队开发的高性能机器翻译模型,采用Transformer架构,拥有18亿参数规模。这个模型特别适…...

Squidex企业级应用案例:从初创公司到大型组织的成功实施经验

Squidex企业级应用案例:从初创公司到大型组织的成功实施经验 【免费下载链接】squidex Headless CMS and Content Managment Hub 项目地址: https://gitcode.com/gh_mirrors/sq/squidex Squidex作为一款强大的Headless CMS和内容管理中心,已被全球…...

Sacred 安全配置:保护敏感实验数据和防止配置泄露的终极指南

Sacred 安全配置:保护敏感实验数据和防止配置泄露的终极指南 【免费下载链接】sacred Sacred is a tool to help you configure, organize, log and reproduce experiments developed at IDSIA. 项目地址: https://gitcode.com/gh_mirrors/sa/sacred Sacred …...

如何5分钟上手franc:初学者完整安装与使用指南

如何5分钟上手franc:初学者完整安装与使用指南 【免费下载链接】franc Natural language detection 项目地址: https://gitcode.com/gh_mirrors/fr/franc franc是一款强大的自然语言检测工具,能够帮助开发者快速识别文本所属的语言。本文将为你提…...

终极Authlogic社区生态指南:探索活跃开源项目与实战最佳实践

终极Authlogic社区生态指南:探索活跃开源项目与实战最佳实践 【免费下载链接】authlogic A simple ruby authentication solution. 项目地址: https://gitcode.com/gh_mirrors/au/authlogic Authlogic是一个简单而强大的Ruby身份验证解决方案,为R…...

探秘LibSass:从源码到CSS的完整编译之旅

探秘LibSass:从源码到CSS的完整编译之旅 【免费下载链接】libsass A C/C implementation of a Sass compiler 项目地址: https://gitcode.com/gh_mirrors/li/libsass LibSass作为一款高效的C/C实现的Sass编译器,是前端开发中不可或缺的工具。本文…...

零基础掌握d2l-pytorch:线性神经网络实现原理与实战指南

零基础掌握d2l-pytorch:线性神经网络实现原理与实战指南 【免费下载链接】d2l-pytorch This project reproduces the book Dive Into Deep Learning (https://d2l.ai/), adapting the code from MXNet into PyTorch. 项目地址: https://gitcode.com/gh_mirrors/d2…...

如何在5分钟内掌握YuukiPS Launcher:动漫游戏启动器的终极解决方案

如何在5分钟内掌握YuukiPS Launcher:动漫游戏启动器的终极解决方案 【免费下载链接】Launcher-PC 项目地址: https://gitcode.com/gh_mirrors/la/Launcher-PC YuukiPS Launcher是一款专为动漫游戏玩家设计的智能启动工具,它能够自动识别游戏客户…...

Quartus II与ModelSim联调实战:从安装到简单验证

1. Quartus II与ModelSim联调概述 第一次接触FPGA开发的朋友,往往会被Quartus II和ModelSim的联调过程难住。这两个工具就像咖啡和糖——单独使用也能工作,但搭配起来才能发挥最佳效果。Quartus II负责硬件设计编译,ModelSim负责功能仿真验证…...

c++如何将std--vector直接DUMP到二进制文件_指针地址直写【附代码】

能,但仅限trivially_copyable类型且不跨平台;否则因字节序、padding、指针等导致读取错乱或崩溃。std::vector.data() 能不能直接 fwrite?能,但仅当元素类型是 trivially_copyable(比如 int、float、double、std::arra…...

C 语言从 0 入门(二十二)|内存四区:栈、堆、全局、常量区深度解析

大家好,我是网域小星球。 很多同学学到指针、动态内存、变量作用域时都会困惑: 为什么局部变量出函数就失效?为什么 malloc 出来的内存要手动 free?为什么字符串常量不能改?野指针、内存泄漏到底是怎么产生的&#x…...