C语言新手大全:C语言常见概念

C语言常见概念

1.C语言是什么

C语言就是一种语言交流

人 — 自然语言 — 人
自然语言:中文 英语 法语…

人 — 计算机语言 — 计算机
计算机语言:C C++ Java Python C# go …

目前已知有上千种计算机语言,人们是通过计算机语言写的程序,给计算机下达指令,让计算机工作的。C语言只是众多计算机语言中的一种。


2.C语言的历史和辉煌

C语言最初是作为Unix系统的开发工具而发明的。

操作系统:Windows Linux — (Centos Redhat Ubuntu) WacOS
Unix — 实验室 科研 高校等使用

C语言的发展史
1.发明B语言:1969年,贝尔实验室的Ken Thompson(肯·汤普森)与Dennis Ritchie(丹尼斯·里奇)一起开发了Unix操作系统。Unix是用汇编语言写的,为了移植到其他计算机,汤普森就在BCPL语言的基础上发明了B语言。

2.发明C语言:1972年,Dennis Ritchie(丹尼斯·里奇)和Brian Kemighan(布莱克·肯林汉)又在B语言的基础上重新设计了一种新语言,这种新语言取代了B语言,所以称为C语言。

3.Unix系统使用C重写:1973,整个Unix系统都使用C语言重写。此后,这种语言开始快速流传,广泛用于各种操作系统和系统软件的开发。

4.C语言标准化:ANSI(美国国家标准协会)正式将C语言标准化,标志着C语言开始稳定和规范化。

5.至今:一直到今天C语言还是广泛的使用,在计算机语言的排行榜霸占前三名。

扩展:世界上首位公认的计算机程序员,是一位女性。其名为Ada Lovelace(埃达·洛夫莱斯),她的父亲是英国大诗人拜伦。


3.编译器的选择vs2022

编译过程:C语言源代码(文本文件 ) -----> 编译链接(翻译)变成可执行的文本文件 ----> 机器指令(二进制指令)

推荐使用VS2022社区版,免费,使用方便,功能强大,默认界面为中文。其缺点是安装包大,占用空间多(大约10G)。

VS使用的一些小技巧
1.调节字体大小:ctrl+滑轮
2.注释:ctrl+k+c
3.取消注释:ctrl+k+u
4.闪光移至行末:end
5.闪光移至行首:home


4.VS项目 和 源文件、头文件介绍

xxx.c — 源文件
xxx.h — 头文件

项目名称:
1.项目名称最好有意义,在未来时 查看方便
2.项目名称最好不使用中文(毕竟是国外软件)
3.不要使用特殊字符

我自己 多使用拼音进行创建(text-xxxx-1-21)

5.第一个C语言程序

学习编程 其实要学习两个点
1.学习语法
2.编程思维 - 把实际问题,用代码的形式表达

要运行代码的话
1.编译+链接
2.运行
按键:Ctrl+F5
如果电脑没反应,那么按 Fn+Ctrl+F5

注意:不能按 F5。在VS2022中,F5是调试

//写一个C语言程序,在屏幕上打印:hello
#include<stdio.h>
int main()
{
	printf("hello\n");
	return 0;
}

6.main函数

注意:
1.main是主函数
2.C语言的程序都是从main函数的第一行开始执行的
3.main函数是程序的入口
4.main函数有且仅有一个

第一次写代码的一些错误总结:
1.main被写成mian
2.main后面的()漏掉
3.代码中不能使用中文符号,如:括号,分号等(应用英文符号)
4.一句语句结束后,有分号

每个C语言程序不管有多少行代码,都是从 main函数 开始执行的,main函数是程序入口,main函数也被叫做,主函数。main 前面的 int 表示 main函数 执行结束的时候返回一个整数类型的值。所以main函数的最后写return 0; 正好呼应。

main函数 的多种写法
1.推荐使用 — 更简洁
int main()
{
return 0;
}

2.旧式的写法 — 不推荐了
void mian()
{

}

3.旧式的写法 — 不推荐了
void main(void)
{

}

4.这里的 void 表示main函数 不接受任何参数 — 也行,但不整洁
int main(void)
{
return 0;
}

5.这种写法也是对的,但很少使用
只有你想使用main函数 的参数时,才可这样写
每一个参数都有特殊的意义
int main(int argc, char* argv[ ], char*envp[ ])
{
return 0;
}


7.printf和库函数

1.printf函数 的功能是在标准输出设备(一般指屏幕)上进行信息的打印

2.为了不再重复实现常见的代码,让程序员提升开发效率,C语言标注规定了一组函数,这些函数再由不同的编译器厂商根据标准进行实现,提供给程序员使用。这些函数组成了一个函数库,被称为标注库,这些函数也被称为库函数。在这个基础上一些编译器厂商可能会额外扩展提供部分函数(这些函数其他编译器不一定支持)。【总的来说,就是C语言给定标准(函数名,参数,返回类型等)再由编译器厂商(微软,苹果等)根据C语言制定的标准进行实现。实现之后,程序员就可以直接使用,极大地提升效率。另外提一句,广泛且规范制定C语言标准,就需要国家的力量,像ANSI】

printf 是库函数,库函数的使用 得包括对应头文件
printf函数 的头文件是stdio.h标注输入输出头文件(std - standard i - input o - output)

例如:

#define _CRT_SECURE_NO_WARNINGS 1
//%d --- 整形的打印
//%c --- 字符的打印
//%f --- 打印小数
#include<stdio.h>
int main()
{
	printf("hello word\n");	// \n是换行
	printf("%d\n", 100);
	printf("%c\n", 's');	//注意:单引号引起来是字符
	printf("%f\n", 3.14);
	return 0;
}

8.关键字介绍

C语言中有一批保留的名字的字符,比如:int , if , return等,这些符号被称为保留字或关键字
注意:
1.每个关键字都有特殊的意义,是保留给C语言使用的
2.程序员自己在创建标识符的时候是不能和关键字重复的
3.自己是不能创建关键字的

C语言的32个关键字如下:
auto break case char const continue default do double else enum extern float for goto if int long register return short signed sizeof static struct switch typedef unsigned void volatile while


9.字符 和 ASCII编码

1.在键盘上可以敲出各种字符,如 a , z , + , #等,这些符号 被称为字符。在C语言中,字符是用单引号括起来的,如‘a’ ,‘#’ , ‘0’等。

字符的打印格式是%c来指定

2.在计算机中,所有数据都是以二进制的形式存储的。每个程序员 给每个字符编一个二进制序列,这个叫做 编码。后来,ANSI为了避免编码混乱,出台了一个标准 ASCII编码,而C语言的字符就遵循了ASCII编码。

总的来说,ASCII表 就是将键盘字符和二进制联系起来(如翻译电报般,你能代表我,我能代表你),二者本身意义相同,只不过形式不同罢了。

在发你啊 a 这里插入图片描述
应用:

在这里插入图片描述
printf 第一行:打印出 字符a(利用语法)
printf 第二行:打印出 字符a(利用ASCII表)

注意:
在这些字符中ASCII码值从0 ~ 32。 这32个字符是 不可打印字符,无法打印在屏幕上观察。

在这里插入图片描述

扩展:

#include<stdio.h>
int main()
{
	//打印所有的字符?
	//利用循环
	int i = 0;//设置一个初始变量
	for (i = 32; i <= 127; i++)//0-32是不可打印字符,至127结束,每次循环+1
	{
		printf("%c ", i);//%c是打印字符的
	}
	return 0;
}


10.字符串 和 \0

1.使用双引号括起来的一串字符就被称为字符串, 如:“ascc”, 这就是一个字符串。

字符串的打印格式 可以 使用%s 来指定。

在这里插入图片描述
2.C语言字符串中有个特殊的知识,就是在字符串的末尾隐藏放着一个 \0字符,这个 \0字符是字符串结束的标志。

对于字符串"asd", 我们实际看到3个字符,但在实际在末尾上还隐藏着一个 \0的转义字符, \0是字符串结束的标志。( 所以我们在使用库函数 printf()打印字符串或strlen()计算字符长度的时候,遇到 \0的时候就自动停止了。)

例子:
“asd” ->a s d \0
“a” -> a \0
" " ->\0


11.转义字符

转义字符就是 转变原来的意思的字符。(加个 \ )

如下:
在这里插入图片描述
解释:\n 是一个转义字符 表示换行的意思,简单的理解为 \ 让 n 的意思发生转变。n 本来是一个普通字符,被 \ 转义为换行。

C语言中还有一些转义字符:

1. \?:书写多个问好使用,防止被解析成三字母词( ??) —>] ??(—>[ ,但在新的编译器上无法验证。

在这里插入图片描述
2. \’:表示字符常量 ’
3. \“: 表示字符常量"

在这里插入图片描述
4. \ \:表示一个反斜杠
5. \t:制表符,(tab的作用), 光标移到下一个水平制表位,通常是下一个4或8的倍数。

在这里插入图片描述
6. \b:退格键,光标回退一个字符,但不删除字符。(光标向前移动一个单位,之后的数据覆盖那一个单位,但不删除那个单位。)
在这里插入图片描述
7. \a:报警,这会使终端发出报警声或出现闪烁,或两者同时发生。
8. \n:换行符。
9. \r:回车符,光标移到同一行的开头。

10.\ddd:d d d表示1-3个八进制的数字。(八进制 0-7) (二进制0-1)
\xdd:d d表示2个十六进制的数字。(十六进制0-15)
\0:空字符,代表没有内容。其实\0就是\ddd这类转移字符的一种,\0用于字符串结束的标志,其ASCII码值为0。

在这里插入图片描述


12.语句 和 语句分类

C语言代码是由一条一条语句构成的,C语言语句可分为以下五类

1.空语句
空语句是最简单的,一个分号就是一条语句,是空语句

在这里插入图片描述
空语句,一般出现的地方是:这里需要一条语句,但这个语句不需要做任何事情,就可以写一个空语句。

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

在这里插入图片描述
3.函数调用语句
函数调用的时候,也会加上分号,就是函数调用语句。

在这里插入图片描述
4.复合语句
复合语句就是成对括号中的代码构成的一个代码块(一个大括号)

5.控制语句
控制语句用于控制程序的执法流程,以现实程序的各种结构方式(C语言支持三种结构:顺序结构,选择结构,循环结构【发明C语言的人,以极度抽象的三种结构将人类活动方式进行高度概括】),他们由特定的语句定义组成,C语言有九种控制语句。

·条件判断语句也叫分支语句:if语句,switch语句
·循环执行语句:do while语句,while语句,for语句
·转向语句:break语句,goto语句,continue语句,return语句


13.注释是什么? 为什么写注释?

注释是对代码的说明,编译器会忽略注释(注释对实际代码没有影响)。
注释是给自己看的,也是给其他编译员看的。
注释是帮助理解代码的,但不要过多注释,也不要写没必要的注释
当然,写注释在一定程度反应程序员的素质,写程序一定要写注释(养成习惯,方便自己,在面试时留下好印象)

  • 29
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值