网站首页 全球最实用的IT互联网站!

人工智能P2P分享Wind搜索发布信息网站地图标签大全

当前位置:诺佳网 > 人工智能 > AI通用技术 >

C语言从入门到精通 第1讲——常见概念

时间:2026-01-28 00:29

人气:

作者:admin

标签:

导读:本文介绍了C语言入门的基础知识,适合有一定C语言基础的学习者查漏补缺。主要内容包括:C语言的定义和作用;VS2022开发环境推荐;第一个quot;hello worldquot;程序解析;main函数作为程序...

前言

从本章开始,我们正式开始C语言的从入门到精通系列。但请注意,本章内容并不适合没有任何C语言基础的朋友观看的哈~我主要是根据自己学习上遇到的一些问题或者是我觉得比较重要的一些点来写的,更加适合的是那些看过C语言书或刚上完老师对应课程内容的大学生来查漏补缺使用~

C语言是什么?

我们知道人与人之间的交流要用到语言,譬如中文,英文亦或是肢体语言。那么人与机器交流的语言是什么呢?那就是计算机语言

计算机语言是指人们通过计算机语言写的程序,给计算机下达指令,并让计算机工作的一种语言。目前呢世界上有上千种计算机语言,C语言就是其中一种,其它的还有Java、Python之类。C语言在世界上被广泛使用,长期处于计算机语言排行榜上的前三名。

集成开发环境

我用的是VS2022社区版,优点嘛就是免费功能强大主流安装即可使用、默认界面为中文,对新手很友好呦~

第一个C语言程序

在屏幕上打印“hello world!”

main函数

首先在这串代码中我们可以看到一个main函数,又称为主函数。一个C语言程序不管有多少行代码,它都会从main函数开始执行,main函数是程序的入口。但要注意,一个项目中只能有一个main函数!即使可以有多个.c文件,但只能有一个main函数!因为程序的入口只能有1个!

我们还注意到在main函数的结尾有一个“return 0”,这是因为main的前面有一个int,代表了函数结束要返回一个整数类型的值。那么return 1可以不可以呢?理论上是没有问题的,但是在C语言中也定俗称的规则是返回0代表程序成功执行,而返回非零数代表发生错误。

字符和ASCII码

在刚开始ASCII有128个,但后面对于有些国家不够用呀,就拓展为了256个。我们并不需要记住所有的ASCII,只需记住一些常用的:

数字0~9:48~57

大写字母A~Z:65~90

小写字母a~z:97~122

不难发现,对应的大小写字母之间的差值为32

换行符\n 的ASCII为:10

且ASCII值为0~31的字符为不可打印字符,无法打印在屏幕上进行观察。

还有个有意思的事情,在C语言中,占位符‘%c’是打印字符,'%d'是打印整数。我们知道字符在计算机中的存储形式是以ASCII形式存储的嘛。那如果我打印数字以%c的形式打印,或者将字符以%d的形式打印,我们会看到什么呢?

这里我们一定要注意,printf中是'a'而非a,因为'a'才表示的是字符a。

通过上面两张图片我们可以看到一个有趣的现象,那就是字符和它的ASCII某种意义上是等价的。

让我们打印个字符来展示展示:

字符串和\0

首先啊我要说明这个‘%s’的占位符呢不是只有打印一串字符时才能用哈,你就算是只打印一个字符,你也是可以用这个%进行输出的哈。但要注意的一点是什么?双引号的内容才能用%s输出,单引号的内容是用%c输出

上图是正确的。

这图是错误的示范哈。

接下来我们讲讲‘\0’,它是字符串的结束标志。

那么它有什么重要性吗?让我们来看看:

这串代码中arr1和arr2有什么区别嘞?

通过运行程序,我们发现arr1的结果中出现了一行烫烫烫,这就很有意思哈,难道这计算机还开智了?自己说电脑很烫?其实呢这是因为在arr1中我们没有字符串结束标志'\0',这就导致了打印完abc之后它不会停止,又继续打印随机值,直到在内存中遇到了‘\0’才停止打印

通过上面这个调试的监控窗口,我们也可以很清楚的看到,arr1中啊是没有‘\0’的,而arr2中是自动在结尾添加了字符串结束标志'\0'的。

那如果我们可以在arr1中添加'\0',会发生什么呢?

转义字符

这就没啥好说了,主要记下常用的几种吧。

\':表示字符常量'

\":表示字符常量"

\\:表示字符常量\

\n:表示换行

\r:回车符,光标移到同一行的开头

\a:警报,会使终端发出警报或者出现闪烁或者二者同时发生

\b:退格键,光标回退一格,但不删除字符

\t:制表符,光标移动到水平制表位,或者是下一个4/8的倍数

特别要提一下的是两种进制转义符:

\ddd代表八进制转义序列,例如:\130表示八进制数130,作ASCII码时对应的字符是X;\xdd代表十六进制转义序列,例如:\x30表示十六进制数字30,作ASCUII码时对应的字符为0。

在C语言中,我们同样可以用八进制或者是十六进制来表示ASCII码值以表示字符。如下图:

上图需要注意的一点是如果是十进制的ASCII码,那么可以直接写数字,而八进制或者是十六进制的ASCII码在printf中要记得带上单引号哦。

还有需要注意的点是'\0'的ASCII码就是0,而字符‘0’的ASCII码是48

说到‘\0’,我就得强调一下,在strlen这个函数返回字符串长度时,是不算上'\0'的

语句和语句分类

C语言的语句可分为以下五类:

空语句、表达式语句、函数调用语句、复合语句、控制语句

其中我们详细说说控制语句哈,控制语句用于控制程序的执行流程,以实现程序的各种结构方式(C语言支持三种结构:顺序结构、选择结构、循环结构。别看结构虽少,但它们确确实实的包含了世界上一切可能表达的流程)。

C语言有九种控制语句,可分为以下三类:

条件判断语句也叫分支语句:if、switch语句

循环执行语句:do while、while、for语句

转向语句:break、continue、goto、return语句

注释的两种形式

一种是/*...*/,需要注意的是每一个'/*'都与最近的'*/'配对,如下图:

第二种是//,但只能单行注释。

结语

好啦,这就是第一节的全部内容啦~是否对你有所帮助呢?如果能够得到你的喜欢,麻烦点个赞喽。期待与你的下期相见喔~

温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信