初识C语言~第一节:C语言基础知识

文章介绍了C语言的基础知识,包括计算机语言和C语言的特点,编译和链接过程,IDE的使用,以及main函数、库函数、ASCII编码、字符串和基本语句的概念。后续会深入讲解数据类型和变量。

今天我们开始学习初始C语言的第一节内容:C语言基础知识

下面我们来看一段代码:

???为什么一上来就是一段代码?因为我想通过问题和实际的代码来进行讲述内容。而上述代码可以将用户者输入的整数打印出来,下面文章开始:

1.C语言

上面的代码都是用C语言写的,那么什么是C语言?

讲C语言之前,我们得先认识计算机语言。人与人之间交流使用的是自然语言,相对应的,人与计算机之间交流用的就是计算机语言。而C语言则是一种面向过程的计算机语言,更加偏向底层设计,需要有解题思维。

1)计算机语言有多种分类方式,其中与面向过程的类型对应的是面向对象类型(Python和Java等)。

2.编译器

2.1 编译和链接

C语言还是一种编译型的计算机语言,由于C语言的源代码都是文本文件,必须经过编译器的编译和链接器的链接才会生成二进制的可执行文件

编译:源文件(.c为后缀的文件)由编译器经过处理生成对应的目标文件(.obj)

链接:目标文件和库文件由链接器处理生成对应的可执行程序(.exe)

1)二进制(binary):人们日常生活中使用的是十进制,十进制中数字包括0~9,每十进一。对应的,二进制中数字仅有0~1,每二进一。除此之外,还有八进制(Octal),十六进制(Hexadecimal)

2.2 集成开发环境

常见的编译器包括msvc,clang和gcc等,而我们一般使用集成开发环境(IDLE),如:VS2022,Devc++,Xcode等。(该系列文章都是运用VS2022来编写代码)

1)IDLE:用于提供程序开发环境的应用程序,一般包括代码编辑器,编译器,调试器和图形用户界面等工具。具有代码编写功能,分析功能,编译功能,调试功能等一体化的开发软件服务套。

2)VS2022的安装教程:b站上可以观看鹏哥的教程

https://www.bilibili.com/video/BV11R4y1s7jz/?spm_id_from=333.999.0.0

3.项目,源文件和头文件

有了编译器,之后就可以创建项目,在项目中添加源文件(.c)头文件(.h)

创建项目:

点击创建新项目

点击空项目,下一步

解决方案资源管理器下,右击源文件,点击新建项。

选择c++文件,因为我们写的是C语言,将名称更名为.c为后缀的文件。

4.C语言程序

下面我们继续来看我们的第一个C语言程序:

通过点击VS2022上调试模块下的开始执行,即可运行出结果(用户先通过键盘输入整数,电脑将在屏幕上打印出输入的整数)。或者在VS2022上通过快捷键:CRTL+F5,运行代码。

注:

//代码必须是英文输入,如英文(和英文;

//每行代码结束后应该以;结尾

//在程序运行结束后,将调试控制台关闭,才能执行下一次的程序

下面分析程序:

4.1main函数

main函数(主函数)是程序的入口,所以分析程序时应该从main函数开始。而main前的int表示main函数的返回值的类型为整型(integer),与函数末尾的(return 0;)呼应。

注:

//main有且仅有一个(即使存在多个.c文件)

//return后接的整数可以为非零,选择0只是过去程序员的编写代码的习惯。

4.2.库函数

代码中的scanf和pritnf函数是库函数,scanf可以将键盘输入的值输给变量n。printf可以在标准输出设备(一般指屏幕)上进行信息的打印。上面的代码是实现对整型n的打印。

printf()还可以打印其他类型的数据:

如图,由双引号包括的是占位符,可以被后面的值代替。

而使用库函数需要包含头文件,scanf和printf需要的头文件即第二行代码:#include<stdio.h>中的stdio.h。

1)库函数:一些由不同编译器厂商根据C语言标准规定实现的函数。这些函数也就构成了标准库,同系列的库函数一般在同一头文件里。//部分编译器厂商可能会额外提供一些函数。

4.3关键字

关键字:一批由C语言保留的符号,具有特定的意义和功能。

常见的关键字:

auto break case char const contine default do double 

else enum extend float for goto if int long register return

short signed sizeof struct switch typedef union unsigned

void volatile while

除此之外,可以在下面的链接了解更多的关键字和上面常见关键字的含义:

https://zh.cppreference.com/w/c/keyword

注:

//不能创建新的关键字

//程序员创建标识符不能与关键字同名。

5.字符和ASCII编码

由单引号括起来的的符号,如‘a’,‘c’,‘%’等

因为计算机只能理解二进制,人们便给每一个字符编一个二进制的序列,即为编码,并由美国国家标准学会(ANSI)制定了一个标准的ASCII编码,C语言之后便遵循ASCII编码的方式。

ASCII码表*:

(引自:https://zh.cppreference.com/w/c/language/ascii

对于我们来说只需记住几个关键的ASCII值即可:

'\0':0;   '\n':10;   'A'~'Z':65~90;   'a'~'z':97~122;   '0'~'9':48~57;

注:

//ASCII值为0~31的32个字符是不可打印的

6.字符串

由双引号括起来的一串字符是字符串。包括”a“单个字符构成的字符串。

注:

//字符串末尾隐藏着一个'\0',作为字符串结束标志

7.转义字符

被\转变原来的意思的字符,称为转义字符。如'\n',从字符n变成了换行的意思。

由上图可知,因为转义的作用,两个代码效果不同。C语言中除了'\n',还有其他类型的转义字符:

\' :表示字符常量'

\" :表示字符常量"

\\ :表示字符常量\,防止其认为转义序列符

\t :表示制表符,光标移至下一个水平制表位(一般为8的倍数)

\f :表示换页符,光标移至下一页

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

\b :表示退格键,光标移至前一个字符

\ddd:表示1~3个八进制的数字   #'\0'即属于该类

\xdd:表示1~2个十六进制的数字

8.语句

C语言的代码就是由一条条的语句构成。

C语言中语句分为五类:

1.空语句 :一个分号,即表示空语句

2.表达式语句 :表达式后加分号

3.函数调用语句 :函数调用后加分号

4.复合语句 :由大括号括起来的多行代码就是复合语句

5.控制语句 :用于控制程序执行的流程,以实现程序的各种结构方式,由特定的语句定义符号组成,C语言共有9种控制语句。共分为三类:

1.条件判断语句(分支语句):if语句,switch语句

2.循环执行语句:do while语句,for语句,while语句

3.转向语句:break语句,return语句,go to语句,continue语句

9.注释

像本文前面使用的//一样,C语言中也可以使用符号//作为注释。

注释:一段不会被编译器执行的文字,用于程序员进行标注和说明,方便代码的阅读。

注释的两种表示方式:

9.1 /**/表示方式

将说明文字放在 /**/中,文字内容可以分行。但不支持嵌套注释。

9.2 //表示方式

将说明内容放在//后,但仅支持一行的内容。

注:

//两种注释方式插入字符串中时,被视为普通字符,没有注释作用。

//在编译过程中,注释内容被替换成空格


本篇文章到此结束,至此我们大致了解了C语言的一些基础知识。但相信大家能够仿照着运用scanf和printf函数,但对于开篇的程序中第一行神秘的代码,第六行的代码(int n = 0;)和scanf及printf函数留有困惑,而这些内容将在下节介绍。

下一篇将介绍C语言的数据类型和变量。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值