C语言学习笔记-C语言概括


注:本笔记基于Visual Studio-2022环境

C语言概述

1.1、C语言的特点

C语言是一种通用的程序设计语言,主要用于进行系统设计,具有如下的特点

1. 高效性

从C语言的发展历程可以看到,它继承了低级语言的优点,代码运行效率高,并且具有良好的可读性和编写性。一般情况下,C语言生成的目的代码的执行效率只比汇编程序低10%-20%。

2. 灵活性

C语言中的语法不拘一格,可在原有的基础上进行创造、复合,从而给程序员更多的想象空间和发挥空间。

3. 功能丰富

除C语言中所具有的类型外,还可以使用丰富的运算符和自定义结构类型来表达复杂的数据类型,完成所需要的功能。

4. 表达能力强

  1. 作为高级语言,C语言具有良好的可移植性。在其他操作系统下,只需要简单的修改甚至不用修改,即可以进行跨平台的程序开发操作。

6. 移植性好

1.2、C语言的开发环境

C语言有很多开发工具,如:VScode、Visual C++ 6.0、Visual Studio 2022、CLion等(工具不是最重要的)
这里选择用Visual Studio 2022

安装Visual Studio 2022社区版

Visual Studio 2022 Community下载链接
下载完成后根据自己需要安装对应的开发环境(这里为个人工作学习需要,大部分打勾了,大约需要30G的空间)
这里应为个人工作学习需要,全部打勾了,大约需要30G的空间

1.3、第一个简单的C语言程序

学习第一步:打印Hello Word!

1、打开Visual Studio 2022
初始化界面
2、选择创建新项目-空项目-下一步
在这里插入图片描述
3、配置好项目名称和项目目录
在这里插入图片描述
4、选择“解决方案资源管理器”中的Demo,右键“源文件”选项,在弹出的快捷菜单中选择“添加”-“新建项”命令,
在这里插入图片描述
5、创建C++头文件-命名-添加
注:(因为要创建C源文件,所以需要在命名的时候将默认的拓展名.ccp改为.c)
在这里插入图片描述
6、将代码写到“一个C语言程序中”

#include<stdio.h>			/*包含头文件stdio.h*/

int main()					/*主函数main,程序入口*/
{
	printf("Hello World!");	/*输出要显示的字符串*/
	return 0;				/*程序返回0*/
}

7、输出结果
在这里插入图片描述

1.#include指令

实例代码的第一行是一个编译预处理命令,声明了在程序编译之前要预先处理的内容。

#include<stdio.h>

其中,include称为文件包含命令,后面的尖括号中的内容称为头文件或首文件。本行代码的作用是声明本段代码已包含标准输入/输出库函数stdio,后续可直接调用,不需要用户再进行自定义。

2.空行

实例代码的第二行是一个空行。


C语言是一个相对灵活的语言,格式并不是固定不变的。也就是说,空格、空行、跳格并不会影响程序的运行。

3.mian函数声明

实例代码的第三行如下

int main()

本行代码的作用是声明main函数有一个整型返回值。其中的int称为关键字,该关键字代表的类型是整型。
函数中,这一部分称为函数头部分。每个C语言程序都必须有一个main函数,表示程序入口部分。也就是说,程序都是从main函数头开始执行的,然后进入main函数体中,执行其中的代码块。
ps:整数类型
(下表列出了关于标准整数类型的存储大小和值范围的细节)

类型存储大小值范围
char1字节-128 到127 或 0 到 255
unsigned char1字节0 到 255
signed char1字节-128 到 127
int2 或 4 字节-32,768 到 32,767 或 -2,147,483,648 到 2,147,483,647
unsigned int2 或 4 字节0 到 65,535 或 0 到 4,294,967,295
short2字节-32,768 到 32,767
unsigned short2 字节0 到 65,535
long4 字节-2,147,483,648 到 2,147,483,647
unsigned long4 字节0 到 4,294,967,295

4.函数体

实例代码中的第4~7行如下:

{
	printf("Hello World");
	return 0;
}

上面介绍main函数的时候,提到了一个名词"函数头"。既然有函数头,也需要有函数体。
在C语言中一个函数通常被分为两个部分:一是函数头,二是函数体。
程序代码的第4行和第7行是两个大括号,这对大括号以及其中的语句块就构成了函数体。第5行和第6行语句就是函数体中要执行的内容。其中,printf函数就包括在标准输入/输出库文件stdio中,因为前面做了包含声明,所以这里开发者可以直接调用,进行字符串的输出操作。

5.执行语句

函数体中第5行代码如下所示:

printf("Hello World!");

执行语句就是函数体中要执行的动作内容。本行代码是这个简单的例子中最复杂的语句,但其实不难理解,printf是格式化输出函数,用于向控制台输出文字和符号。括号中的内容称为函数参数,这里可以看到要输出的文字是"Hello World!“。其中还可以看到”\n"这样的符号,称之为转义符,其作用是换行。
注意不要忘记添加";"

6.return语句

函数体中的第6行代码:

return 0;

本行语句使main函数终止运行,并向操作系统返回一个整型常量0.前面介绍main函数时,说过它需要返回一个整型值,这里0就是要返回的整型值。可以将return语句理解成mian函数的结束标志。

7.代码注释

在多句程序代码后,均可以看到一段由/**/组成的注释代码

#include<stdio.h>			/*包含头文件stdio.h*/

int main()					/*主函数main,程序入口*/
{
	printf("Hello World!");	/*输出要显示的字符串*/
	return 0;				/*程序返回0*/
}

这段对代码的解释表述性文字称为代码注释,作用是为了他人能快速理解程序代码的含义和设计思想。

1.4一个完整的C程序

计算长方形体积

#include<stdio.h>
#define Height 10
int calculate(int Long, int Width);
int main()
{
	int m_Long;
	int m_Width;
	int result;

	printf("长方形的高度为:%d\n",Height);

	printf("请输入长度\n");
	scanf("%d",&m_Long);

	printf("请输入高度\n");
	scanf("%d",&m_Width);

	result = calculate(m_Long, m_Width);
	printf("长方形体积是:");
	printf("%d\n", result);
	return 0;
}

int calculate(int Long, int Width)
{
	int result = Long * Width * Height;
	return result;
}

注:这里直接运行这段程序会报错
在这里插入图片描述
原因是scanf函数存在点问题,不安全
1、可以选择在开头加入

#define _CRT_SECURE_NO_WARNINGS

来防止报错
2、可以使用scanf_s来防止报错(但该方法不适用于大规模开发,容易搞混淆)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值