news 2026/5/30 3:17:58

聊聊C语言-程序和编程语言

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
聊聊C语言-程序和编程语言

前几天看到新闻说是美国总统奥巴马写代码并且鼓励全部的美国人都应该学习编程,一时编程成了人们热议的话题。那么小编接下来将要写一个系列的文章来带你进入C语言编程的奇妙世界。

什么是编程?

编程简单来说就是用计算机能够识别的语言来编写程序。我们平时用的电脑、平板、手机、电视机、计算机以及工厂用的各种设备无一不包含程序。

上面这幅画面肯定大家都见过它包含不少人对儿时的回忆,它就是一个计算机程序。

什么是编程语言?

了解了什么是编程,那么我们就来了解一下编程语言。不论是我们平时说的汉语、英语、法语还是其他语言,它们从来就是我们用来沟通的工具。如果我们要和计算机进行沟通,对它说这些语言肯定行不通(或许未来计算机可以听懂我们说的语言,自己进行编程吧。小编也期待那一天),我们就要用计算机能够懂的语言。只要计算机能够听得懂的语言我们就可以叫它编程语言。

计算机懂的语言是什么呢?

就是010101这些二进制语言(也叫机器语言)。计算机只能对数字做运算,最早的程序员就是用这些010101来编写程序的。想想也是醉了,整天面对这些010101该是一件多么苦逼的事情。后来人们为了解决这件苦逼的事情发明了很多种高级语言(也叫形式语言)。

上面这幅图展现了人们发明的大多数高级语言,但是并不包含全部。我们现在用的程序基本都是用这些高级语言编写的。

高级语言与机器语言的联系是什么?

上面说的高级语言其实也并不能被计算机直接识别处理的,它们需要转化成机器语言。转化的方法有两种-编译和解释。只有经过编译或者解释完后,我们的程序才能在计算机或者其他设备上运行。经历的过程如下:

为什么选择C语言?

既然有那么多的高级语言我们为什么选择C语言编写程序呢,也许是小编对C语言有着独有的情怀吧,也许是因为我们上过大学的人基本上学的第一门编程语言都是C语言吧,也许它是至今为止用的最多的和底层硬件打交道的语言吧,也许它是这么多高级语言中经历时间的考验最长,至今仍被频繁使用的语言吧。

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

AI编程06-上下文管理与Prompt Caching实战:让AI记住你的项目,Token成本降低80%

每次对话都要重复项目背景?Prompt Caching技术可让Token成本降低80%。本文从原理到实战,带你掌握上下文管理的最佳实践。 一、痛点:为什么你的AI总是"健忘"? 想象一下这样的场景:你正在用AI辅助开发一个电商系统,已经聊了20轮,AI对你的项目结构、技术栈、业务…

作者头像 李华
网站建设 2026/5/30 3:10:03

94、CAN FD的位填充机制与CRC增强:安全性的全面升级

CAN FD的位填充机制与CRC增强:安全性的全面升级 去年在给某车厂做域控制器联调时,遇到一个诡异的偶发错误——CAN FD报文在特定温度下频繁报CRC错误,但用示波器抓波形又看不出明显畸变。折腾了两周,最后发现是位填充规则在数据场长度超过64字节时触发了某种“伪同步”现象…

作者头像 李华
网站建设 2026/5/30 3:09:24

解决TI Stellaris开发板SWD通信失败问题

1. 问题现象与背景分析最近在调试TI Stellaris LM3S6965开发板时,遇到了一个典型的调试连接问题:使用Keil ULINK2调试器通过SWD协议连接时,Keil Vision IDE弹出"SWD Communication Failure"错误提示。这个现象在嵌入式开发中颇具代…

作者头像 李华
网站建设 2026/5/30 3:05:58

从process.argv到Buffer:手把手拆解Node.js内置全局对象的实战用法

从process.argv到Buffer:手把手拆解Node.js内置全局对象的实战用法在Node.js开发中,全局对象就像工具箱里的瑞士军刀,看似简单却蕴含强大功能。很多开发者虽然每天都在使用process和Buffer,却只停留在基础调用层面。本文将带你深入…

作者头像 李华