c语言

加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言以及不需要任何运行环境支持便能运行的高效率程序设计语言。尽管C语言提供了许多低级处理的功能,但仍然保持着跨平台的特性,以一个标准规格写出的C语言程序可在包括类似嵌入式处理器以及超级计算机等作业平台的许多计算机平台上进行编译。最新的C语言标准是C18。

C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言以及不需要任何运行环境支持便能运行的高效率程序设计语言。尽管C语言提供了许多低级处理的功能,但仍然保持着跨平台的特性,以一个标准规格写出的C语言程序可在包括类似嵌入式处理器以及超级计算机等作业平台的许多计算机平台上进行编译。最新的C语言标准是C18。收起

查看更多
  • 说到树莓派编程语言,大部分首先都会想到的是 Python C 和 C++...
    若我们今日发起一项投票,Python、C和C++很可能会位列树莓派编程语言排行榜前列。但最近,我偶然发现了另一种语言。尽管它不那么广为人知,但潜力巨大,尤其是当你在项目中追求速度与性能时。
    说到树莓派编程语言,大部分首先都会想到的是 Python C 和 C++...
  • C语言的关键字restrict,你用过吗?
    `restrict` 是 C语言中的一个指针限定符,用于告诉编译器指针之间不存在指针别名,从而允许编译器进行更高效的优化。它主要用于高性能库函数、数字信号处理和图像处理等领域,能够显著提高计算密集型任务的性能。然而,使用 `restrict` 必须确保指针确实没有别名,否则会导致未定义行为,因此需要谨慎使用。
    709
    11/12 11:11
  • ElfBoard科普课堂|为什么C语言在嵌入式技术领域中的地位难以撼动?
    在嵌入式技术领域,“C语言与硬件”的组合,常被比作计算机体系中的“二进制与晶体管”——它们是无数智能设备稳定运行的底层支柱,贯穿了嵌入式应用的核心环节。这一“黄金搭档”的形成,并非偶然或单纯历史惯性使然,而是源于C语言本身的特性与嵌入式硬件开发的核心需求高度契合,尤其在高效性、可控性与兼容性三个关键维度上表现突出。 C语言诞生于1970年代,最初为Unix系统开发而设计。其“接近硬件、又高于汇编”
    1154
    11/06 17:47
  • 手把手教你分析C语言if架构代码最终如何用arm汇编实现
    这篇文章介绍了如何将简单的C语言代码翻译成ARM汇编代码。首先,作者展示了C代码的基本结构,并将其编译成二进制文件。接着,使用`arm-linux-gnueabihf-objdump`命令去除了符号信息,生成了汇编代码文件。通过对汇编代码的逐行分析,解释了变量在栈上的分配、if语句的执行流程以及整个程序的编译步骤。最后,提供了相关的编译脚本和配置文件,帮助读者更好地理解和掌握这一过程。
    617
    10/30 13:31
    手把手教你分析C语言if架构代码最终如何用arm汇编实现
  • 嵌入式C与C++混合编程?
    本文介绍了C和C++之间的符号命名规则差异及其解决方法——`extern "C"`关键字。详细解释了为何需要Name Mangling、`extern "C"`的工作机制,并通过实例展示了如何在C++中调用C库和导出接口给C调用的具体实践。最终总结指出,`extern "C"`是解决跨语言调用问题的有效手段,具有极高的工程价值。
    496
    10/21 15:21
    嵌入式C与C++混合编程?
  • c语言:如何定义一个和库函数名一样的函数,并在函数中调用该库函数
    在一个库文件中有不可修改的函数 `fun_1()`,需要替换为自定义的 `fun_2()` 函数,并且 `fun_2()` 需要调用 `fun_1()`。可以通过使用 `static` 关键字来创建局部静态函数 `fun_2()`,使其仅在当前文件中可见,从而避免与其他同名函数冲突。这样可以在 `fun_2()` 中直接调用库文件中的 `fun_1()`,而不影响其他文件中的同名函数。
    405
    09/10 09:45
  • 在嵌入式技术领域,为什么C语言的地位难以撼动?
    我是老温,一名热爱学习的嵌入式工程师。关注我,一起变得更加优秀! 今天,我们来讨论一下,C语言在嵌入式技术领域的地位~ 在嵌入式技术生态里面,“C语言 + 硬件”的组合搭配,就好像计算机技术里面的“二进制+晶体管”,是支撑着无数智能硬件设备运行的底层基石,几乎贯穿了嵌入式应用的大部分核心场景。 “C语言+硬件”这种最佳搭配,其实并非源于历史惯性和必然,而是C语言的技术特性与嵌入式硬件的核心诉求形成
  • c语言实例|实现log子模块
    一、log.c 介绍 log.c 是一个极为简约的 C 语言日志库,由 akstuki 开发维护。该项目旨在提供一个轻量级、易于集成的解决方案,让开发者能够迅速地在他们的 C 应用程序中添加日志记录功能。 尽管其体积小巧,仅由一个 .c 文件和一个 .h 文件组成,总计不超过 200 行代码,但 log.c 依然具备足够的灵活性来满足基础的日志需求,包括不同的日志级别、输出到文件的能力,以及线程安
    1452
    08/11 08:45
    c语言实例|实现log子模块
  • 打造最具影响力Rust赛事 第三届vivo蓝河操作系统创新赛正式启动
    在7月举行的2025开放原子开源生态大会上,第三届开放原子大赛正式启动。开放原子大赛是由开放原子开源基金会组织举办的面向开源领域的技术类赛事。大赛面向开源组织、企事业单位、高等院校、科研院所等机构征集一批产业发展、科研创新过程中遇到的技术难题,联合社会各界鼓励通过开源模式解决“真问题”,推广开源技术,发现开源人才。 作为大赛的一个重要赛项,vivo蓝河操作系统创新赛(以下简称“蓝河创新赛”)于8月
  • 为啥C语言中返回0代表成功?
    学电子的小伙伴都知道,我们的逻辑电平0代表低,1代表高。还有,逻辑运算时,0代表假,非0值代表真。那么,你发现一个问题没有,我们C/C++编程时,很多情况下都是返回0代表成功?
    995
    06/19 11:40
    为啥C语言中返回0代表成功?
  • 10种初学者最常见的c语言段错误实例及原因分析
    段错误相信是每一个C语言初学者都会遇到的一个问题,很多初学者看到这个错误就开始抓狂。但是没写过段错误的程序员不是个合格的程序员!一口君写了这么多年代码,有时候还是会出现段错误。
    2063
    05/27 10:40
    10种初学者最常见的c语言段错误实例及原因分析
  • C语言输出控制符详细总结
    C语言中的输出控制符用于控制输出结果的格式和布局
    2790
    05/24 08:25
    C语言输出控制符详细总结
  • 不小心踩了指针和内存地址对齐的坑
    指针,是C语言中的一个重要概念及其特点,也是掌握C语言比较困难的部分。指针也就是内存地址,指针变量是用来存放内存地址的变量。
    不小心踩了指针和内存地址对齐的坑
  • 代码编程规范-扩展(头文件)
    这篇重点介绍一下代码编程规范的扩展要求-头文件规范要求。对于C语言来说,头文件的设计体现了大部分的系统设计。不合理的头文件布局是编译时间过长的根因,不合理的头文件实际上反映了不合理的设计。
  • C语言基础,来喽!
    可以看到,C 语言是一种底层语言,是一种系统层级的语言,操作系统就是使用 C 语言来编写的,比如 Windows、Linux、UNIX 。如果说其他语言是光鲜亮丽的外表,那么 C 语言就是灵魂,永远那么朴实无华。
    1010
    03/26 13:55
  • C语言初学者编程水平上不来?不妨尝试这10个C语言例子
    初学者通过下面几个c语言,大家可以提高自己的编程水平,
    1561
    03/03 15:17
  • 嵌入式算法12---排序算法
    嵌入式系统中尤其涉及数据采集的,需要对数据进行简单处理后再进行业务层功能,考虑到硬件的资源限制,对于数据排序,一般只是应用这四种简单的排序算法。本文讲解不同算法进行从小到大的升序排列的过程。
    679
    02/25 11:23
  • AWTK-WEB 快速入门(5) - C 语言 WebSocket 应用程序
    WebSocket 可以实现双向通信,适合实时通信场景。本文介绍一下使用 C 语言开发 AWTK-WEB 应用程序,并用 WebSocket 与服务器通讯。
    AWTK-WEB 快速入门(5) - C 语言 WebSocket 应用程序
  • 【LeafBuildTool】构建工具系列1:make
    make —— 项目的关节一个中型或大型项目,通常由许多文件组成模块,又由各个模块组成整个系统,将各个文件、模块构建为系统的方式,一直是项目管理中的要点。make是一个传统——但是流行的构建工具,Makefile是其定义规则的文件,其中定义的规则就像关节,将项目中的各部分灵活而有序地组织在一起。基本语法Makefile的核心是规则,其由一系列规则组成,每个规则的基本语法如下:target: pre
    1052
    02/11 22:00
    【LeafBuildTool】构建工具系列1:make
  • 【LeafC】C语言之宏魔法4:offsetof&container_of
    offsetof和container_of是C语言编程中常用的宏,offsetof用于获取结构体成员的相对偏移,container_of通过结构体字段获取结构体地址
    708
    02/10 22:50
    【LeafC】C语言之宏魔法4:offsetof&container_of

正在努力加载...