初始C语言

1——C语言是什么?

C语言就像人们之间交流的语言(汉语,英语等)一样,只不过C语言是帮助人们跟计算机之间交流的语言,我们称与计算机交流的语言为计算机语言,C语言就是其中一种。

2——C语言的历史

1969年,贝尔实验室里,汤普森和丹尼斯两人一起用汇编语言(计算机语言)开发了Unix系统,为了其可移植性,汤普森创造了B语言。

1972年,丹尼斯和布莱恩在B语言的基础上开发了C语言,取代了B语言。

1973年,丹尼斯用C语言重新书写了Unix系统。此后这种语言广泛被应用。

1989年,美国国家标准协会(ANSI)发布了C语言标准,即C89,标志着C语言的稳定和规范化。

至今,C语言依旧是最流行的计算机语言之一。

3——C语言编译器的选择

3.1-初步了解运行的机制

C语言是编译型语言,其源文件(.c)为后缀的文件,需要经过编译和链接两个步骤,最终生成可执行文件。

3.2-选择VS2022的原因

常见的编译器有msvc,gcc,clang等等。常见的集成开发环境有VS,DevC++,XCode等等。(集成开发环境(简称IDE),即包含了代码编写,分析,编译,调试等功能为一体的开发软件)

VS集成了msvc,功能强大,中文版本,而且目前大部分企业使用的是VS。缺点是安装需要的内存较大。

4——VS项目,头文件,源文件介绍

VS用项目来管理文件,项目名称最好有意义,尽量不要用中文,不要有特殊符号和空格。

项目位置确定好,方便管理。

解决文件里可以包含多个项目,初步可以理解为项目就是解决方案。

源文件是XXX.c

头文件是XXX.h

5——第一个C语言程序

#include<stdio.h>

int main()
{
    printf("hello world\n");
    return 0;
}

6——main函数

main函数也叫主函数,每个C语言程序都是从main函数进入,main函数相当于每个程序的入口

C语言一般认为返回0表示返回正常,非0表示异常。

main函数有且仅有一个,即使一个项目里有多个.c文件,也只能有一个main函数,因为C语言程序只能有一个入口。

代码式内容必须是英文符号。

7——printf函数和库函数

printf函数作用是将想要输出的内容打印在标准输出设备上面(一般指屏幕),即将双引号中的内容打印出来。%d是占位符,\n是转义字符。

为了不再重复实现一些常用的代码,C语言规定了一些标准函数,这些函数再由不同的编译器商家根据标准去实现,最终提供给程序员去使用。这些函数组成了一个库,叫做标准库,里面的函数也叫库函数。此外,不同的编译器可能会提供库函数之外的函数,其他编译器不一定支持。

C语言只规定语言,没有具体地去实现很多函数。

相同系列的函数一般包含在同一个文件里。

8——关键字介绍

C语言中保留了一些名字的符号,称为关键字或者保留字。

这些符号具有特殊含义,只留给C语言使用。

在自己创建标识符的时候不能和关键字相同。

关键字不能自己创建。

具体关键字介绍可以自己去搜索,不用特意地记忆。

9——字符和ASCII编码

在键盘上敲出来的就是字符,在C语言中用‘ ’括起来表示。

因为计算机内部使用二进制,所以美国国家标准协会也给这些字符进行了编码,称为ASCII编码。

掌握几组特殊的即可,具体可以去搜。

数字0~9:48~57

A~Z:65~90

a~z:97~122

‘0’表示字符0

0表示数字0,即什么都没有

0~31这32个字符无法在屏幕上打印出来

10——字符串和\0

使用双引号括起来的是字符串,字符串末尾隐藏着一个\0表示字符串的结束,\0不计入字符串长度,即字符串长度指\0之前的字符个数。

在打印字符串时,如果找不到字符串后面的\0,会一直打印下去,直到找到\0。

strlen是统计字符串长度的函数,统计\0之前字符的个数。

\0实质上是转义字符。

11——转义字符

转变原来字符含义的字符,我称之为转移字符。

常见的转移字符:

\?  :书写连续多个问号时,防止被解析成三字母词

\'   :用于表示字符常量‘

\"   :用于表示一个字符串内部的“

\\   :防止\被转义

\a   :报警

\b   :退格,光标往后退一格,但不删除

\f   :换页符

\n   :换行符

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

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

\v   :垂直分隔符,光标移动到下一个垂直制表位,通常时下一行的同一列

\ddd:ddd表示1~3个8进制的数字

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

12——语句和语句分类

空语句

表达式语句

函数调用语句

控制语句

复合语句

12.1-空语句

一个分号就是一条语句

需要一条语句,但什么都不用干的时候使用

12.2-表达式语句

在表达式语句后面加上分号就是表达式语句

12.3-函数调用语句

函数调用的时候加上分号

12.4-复合语句

大括号内的所有语句构成,也称为代码块

12.5-控制语句

顺序

选择

循环

转向语句

13——注释

注释是给程序员看的,计算机会忽略它。

养成写注释的习惯,但不要过度编写注释

注释:

//

/**/

注意注释嵌套问题

注释不要放到双引号里面,会被当做字符串

注释在编译时会被当做空格,所以注释的位置不要引起错误

可以

#include<stdio.h>
int main()
{
    int a = /**/10;
    return 0;
}

不行

#include<stdio.h>
int main()
{    
    in/**/t a = 10;
    return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值