news 2026/7/1 21:55:02

鸿蒙PC玩转C语言开发:从环境搭建到代码运行全指南

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
鸿蒙PC玩转C语言开发:从环境搭建到代码运行全指南

一、前言:鸿蒙 PC 也能搞定 C 语言开发?

很多开发者可能以为鸿蒙系统主要聚焦移动端或嵌入式场景,但随着鸿蒙 PC 系统的不断迭代,其桌面端开发能力已日趋完善。当系统升级到6.0.0.115版本及以上后,通过官方提供的 DevBox 工具集,我们可以轻松搭建完整的 C 语言开发环境,无需额外安装复杂的编译器套件,终端直接就能编译运行 C 代码。本文就带大家从零开始,解锁鸿蒙 PC 的 C 语言开发技能!

二、前提条件:做好这两步,开启开发之旅

在开始之前,需确保你的设备满足以下两个核心条件,这是后续开发的基础:

  1. 系统版本达标:鸿蒙 PC 系统已升级至 6.0.0.115 版本或更高。

    验证方式:进入「设置」→「→「关于本机」,查看「版本号」确认(若未达标,可通过检查更新按钮手动升级)。

  2. 安装 DevBox 工具集:通过鸿蒙应用市场搜索「DevBox」直接安装。

    DevBox 是官方打包的开发工具套件,内置了 C 语言开发所需的全套基础工具:llvm、clang(编译器)、autoconf(配置工具)、bash(终端环境)、cmake/make/ninja(构建工具)、hdc/hnpcli(调试工具)等,安装后自动配置环境变量,终端可直接调用。

三、环境验证:确认工具已就绪

安装完成后,我们先通过终端验证工具是否正常可用,避免后续开发踩坑:

  1. 打开鸿蒙 PC 的「终端」应用;

  2. 输入以下命令,分别验证编译器、构建工具是否安装成功:

  • 验证 clang(C 语言编译器):clang --version

    若输出类似clang version 21.1.8 (https://github.com/Harmonybrew/ohos-llvm ef4b3a091bd51684aa80dd7cde1d9d171ea0640e)的版本信息,说明编译器正常;

  • 验证 make(构建工具):make --version

    若输出「GNU Make 4.4.1」等版本信息,说明工具可用;

  • 验证 cmake(跨平台构建工具):cmake --version

    输出版本信息即表示正常。

如果某条命令提示「command not found」,可重新安装 DevBox 或重启终端后重试。

四、实操演示:编写第一个 C 语言程序

环境就绪后,我们通过「Hello World」示例,完整演示从代码编写到运行的全流程:

步骤 1:创建工作目录

在终端中输入以下命令,创建一个专门存放 C 语言代码的目录(避免文件混乱):

# 创建工作目录(名称可自定义,这里用c_dev)mkdir-p~/c_dev# 进入该目录cd~/c_dev

步骤 2:编写 C 语言代码

鸿蒙 PC 自带「文本编辑器」,可直接用于编写代码,也可使用 VS Code 等第三方编辑器(需自行安装),这里以系统自带编辑器为例:

  1. 在终端中输入命令,用文本编辑器创建并打开 C 文件:vim hello.c(文件名后缀必须为.c,否则编译器无法识别);

  2. 在编辑器中输入以下代码:

#include<stdio.h>intmain(intargc,char*argv[]){printf("Hello HarmonyOS PC! 鸿蒙C语言开发入门成功!\n");return0;}

步骤 3:编译 C 代码

回到终端(此时仍在~/c_dev 目录下),使用 clang 编译器将.c 源代码编译为可执行文件:

输入编译命令:

clang hello.c-ohello

  • 命令说明:clang是编译器命令,hello.c是源代码文件,-o hello表示指定编译后的可执行文件名为 hello(可自定义,无后缀);

  • 编译成功的标志:终端无任何报错信息,且目录下会新增一个名为「hello」的可执行文件(可通过ls命令查看:输入ls,会显示「hello hello.c」两个文件)。

步骤 4:运行可执行文件

编译完成后,直接在终端中运行程序:

输入运行命令:

./hello


点击运行按钮,此时终端会输出:Hello HarmonyOS PC! 鸿蒙C语言开发入门成功!,表示程序运行正常!

五、进阶:使用 CMake 构建多文件项目

如果后续开发多文件、多模块的 C 语言项目,直接用 clang 编译会比较繁琐,此时可使用 DevBox 内置的 CMake 工具简化构建流程,这里简单演示核心步骤。
假设我们有两个文件:main.c(主程序)和calc.c(计算模块),项目结构如下:

c_dev ├── main.c ├── calc.c └── calc.h // 头文件,声明函数
  1. 编写代码文件
  • calc.h(函数声明):

    intadd(inta,intb);// 声明加法函数
  • calc.c(函数实现):

    #include"calc.h"intadd(inta,intb){returna+b;}
  • main.c(主程序调用):

    #include<stdio.h>#include"calc.h"intmain(){intx=10,y=20;printf("%d + %d = %d\n",x,y,add(x,y));return0;}

  1. 创建 CMakeLists.txt(构建配置文件)

    在项目目录下创建CMakeLists.txt文件(文件名固定,大小写敏感),输入以下配置:

    # 指定CMake最低版本要求​cmake_minimum_required(VERSION3.10)# 项目名称(可自定义)​project(CalcProject)# 查找当前目录下的所有.c文件,存入SRC_FILES变量​aux_source_directory(. SRC_FILES)# 生成可执行文件(第一个参数为输出文件名,第二个为源文件变量)​add_executable(calc${SRC_FILES})

  2. 编译并运行

    在终端中执行以下命令:

    # 创建构建目录(避免污染源码目录)​mkdirbuild&&cdbuild​# 生成Makefile(基于CMakeLists.txt)​cmake..# 编译项目(等价于make命令,自动处理依赖)​make​# 运行可执行文件​./calc


    点击运行按钮,同意运行

    输出结果:10 + 20 = 30,表示多文件项目构建成功!

六、总结

通过本文的步骤,我们可以发现:鸿蒙 PC 在升级到 6.0.0.115 版本后,借助 DevBox 工具集,无需复杂配置就能快速搭建 C 语言开发环境。从单文件的 Hello World 到多文件的项目构建,鸿蒙 PC 完全能满足日常 C 语言开发、学习的需求。

对于开发者而言,这意味着鸿蒙 PC 不仅是办公、娱乐的工具,也能作为轻量型开发环境,无论是入门 C 语言、编写小型工具,还是适配鸿蒙系统的 C 语言应用,都能轻松应对。后续还可以探索使用 VS Code 搭配 C/C++ 插件提升开发效率,或尝试调用鸿蒙系统 API 开发更具针对性的应用,欢迎大家在评论区分享你的开发经验!

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/26 15:40:10

PCB半孔板精度要求把控

作为一名深耕 PCB 行业十余年的技术专家&#xff0c;今天跟大家聊聊PCB 半孔板的精度要求。半孔板&#xff0c;顾名思义就是在板材边缘只做一半深度的孔&#xff0c;常用于板对板连接、射频模块等高密度、高可靠性的产品中。而精度&#xff0c;就是半孔板的 “生命线”—— 精度…

作者头像 李华
网站建设 2026/6/26 15:40:15

昆仑芯启动港股上市:一枚芯片,如何折射百度全栈AI能力?

百度集团在港交所公告&#xff0c;1月1日&#xff0c;昆仑芯已透过其联席保荐人以保密形式向香港联交所提交上市申请表格&#xff08;A1表格&#xff09;&#xff0c;以申请批准昆仑芯股份于香港联交所主板上市及买卖。在AI芯片产业迎来历史性机遇的当下&#xff0c;百度正式启…

作者头像 李华
网站建设 2026/6/30 23:24:10

揭秘C# P/Invoke跨平台调用失败根源:3步解决原生库兼容难题

第一章&#xff1a;揭秘C# P/Invoke跨平台调用失败根源&#xff1a;3步解决原生库兼容难题 在开发跨平台 .NET 应用时&#xff0c;P/Invoke 是调用操作系统原生 API 或第三方 C/C 动态链接库的关键技术。然而&#xff0c;开发者常遇到“找不到入口点”或“无法加载库”等错误&a…

作者头像 李华
网站建设 2026/6/30 12:32:43

C# 12主构造函数实战应用,90%开发者忽略的3个计算陷阱

第一章&#xff1a;C# 12主构造函数概述C# 12 引入了主构造函数&#xff08;Primary Constructors&#xff09;&#xff0c;极大简化了类和结构体的初始化语法&#xff0c;尤其在减少样板代码方面表现突出。这一特性允许开发者在类或结构体声明的同一行中定义构造参数&#xff…

作者头像 李华
网站建设 2026/7/1 6:18:01

【必学收藏】思维链(CoT)完全指南:提升大模型推理能力的核心技术

思维链&#xff08;Chain of Thought, CoT&#xff09;的核心理念是鼓励 AI 模型在给出最终答案之前&#xff0c;先进行一步步的推理。虽然这个概念本身并不新鲜&#xff0c;本质上就是一种结构化的方式来要求模型解释其推理过程&#xff0c;但它在今天仍然高度相关。随着 Open…

作者头像 李华
网站建设 2026/6/28 23:33:36

程序员必藏:大模型退潮,AI Agent崛起:把握AI未来发展趋势

大模型退潮&#xff0c;AI Agent崛起 在当今的AI叙事中&#xff0c;大语言模型&#xff08;LLM&#xff09;和聊天机器人占据了绝大部分流量。我们惊叹于它们写代码、写作和答疑的能力&#xff0c;但这仅仅是冰山一角。 当前&#xff0c;AI正在经历一场从“中心化大脑”向“分布…

作者头像 李华