目录
一.什么是C语言
二.第一个C语言程序
2.1创建项目:
2.2新建.c文件:
2.3写代码 :
三.数据类型和计算机中常见的计量单位
3.1基本数据类型:
3.2修饰符:
3.3自定义数据类型:
3.4类型转换:
3.4计算机中常见的计量单位
四.变量,常量
4.1定义变量的方法
4.2变量的命名
4.3变量的分类
4.4变量的作用域和生命周期
4.5常量
4.5.1字面常量(Literal Constants):
4.5.2符号常量(Symbolic Constants):
4.5.3枚举常量(Enumeration Constants):
先来看看官方是怎么定义它的:C语言是一门通用计算机编程语言,广泛应用于底层开发。C语言的设计目标是提供一种能以简易的方式编译,处理低级存储器,产生少量的机器码以及不需要任何环境支持便能运行的编程语言。
我们新买回来的电脑它只是一个硬件,要想使用它,必须给它装上操作系统(Windows,Linux,Mac等),而在操作系统和硬件之间还有驱动程序,只有操作系统去调用驱动程序才能使用电脑,在操作系统之上又有应用软件(微信,QQ,王者荣耀等)。以操作系统为分界线,在它之下的我们称为下层(底层)软件,之上的我们称为上层软件。C语言主要应用于底层开发,像C++,Java则广泛服务于上层软件。
在日常生活中人与人之间需要相互交流,传递思想,这时候用到的就是我们所熟悉的汉语言。而C语言它则是一门计算机语言,专门用于人和计算机之间的交流。
二十世纪八十年代,为了避免各开发厂商用的C语言语法产生差异,由美国国家标准局为C语言制定了一套完整的美国国家标准语法,称为ANSIC,作为C语言的最初标准。所以说,衡量一门语言值不值得去学习,就看这门语言有没有国际标准。
C语言是一门面向过程的计算机编程语言,与C++,Java等面向对象的编程语言有所不同。其编译器主要有Clang,GCC,WIN-TC,SUBLIME,MSVC,Turbo C等。
俗话说:“工欲善其事,必先利其器”,在写第一个程序之前,我们先来了解一下编写代码的工具。常用的编译器有VS2019,VS2022,DevC++,CodeBlocks,这些都是集成开发环境(集成了编辑器,编译器,调试器等开发工具的软件)。我们平时所写的C语言代码,写出来的程序都是.c的文件,只有经过编译和链接后才会形成.exe文件(可执行文件)。
接下来我们使用VS工具来写一个代码,主要有以下三个步骤:
如果项目创建完成后没有出现“解决方案资源管理器”的窗口,可以点击“视图”,“ 解决方案资源管理器”,它就会出现。
C语言程序一般有两种文件 (.c是源文件)(.h是头文件)
写一个C语言程序,在屏幕上打印:Hello World!
#define _CRT_SECURE_NO_WARNINGS
#include
int main()
{
printf("Hello World!\n");
return 0;
}
要想看到这个代码的效果,就得编译,链接,运行,在 VS2019\2022中直接按 Ctrl+F5(开始执行(不调试)) 就可以了
在C语言中,数据类型是编程中非常重要的概念。了解和正确使用不同的数据类型对于编写高效,可靠的代码至关重要。下面将介绍C语言中的一些基本数据类型及其用法:
在C语言中,数据类型之间的转换是常见的操作。可以使用强制类型转换(casting)来将一个数据类型转换为另一个数据类型。例如,(int)将一个浮点数转换为整数。
如果我们想知道某种数据类型在当前编译环境中所占用的内存大小,可以使用sizeof运算符来计算(如下图所示),需要注意的是,运算符返回的是类型或变量所占用的内存大小(以字节为单位),而不是存储的实际值。
可能有的小伙伴会疑惑为什么整型和长整型所占用的内存大小会一样呢,这是因为C语言标准规定:
sizeof(long long) >= sizeof(long) >= sizeof(int) > sizeof(short) > sizeof(char)
生活中的有些值是不变的(比如:圆周率,性别,身份证号码,血型等等),有些值是可变的(比如:年龄,体重,薪资等)。不变的值,C语言中用常量来表示,变得值,C语言中用变量来表示。
<数据类型> <变量名>;
例如:
int age;
float weight;
char grade;
在C语言中,变量的命名需要遵循以下规则:
根据这些规则,以下是一些有效的变量命名示例:
```
int age;
float salary;
char first_name;
int studentCount;
double averageScore;
```
需要注意的是,C语言中的变量名是区分大小写的,因此age和Age是两个不同的变量名。另外,建议使用驼峰命名法或下划线命名法来提高变量名的可读性。例如,studentCount使用了驼峰命名法,而average_score使用了下划线命名法。
1.全局变量:在{ }外边定义的变量就是全局变量。全局变量在程序的任何地方都可以访问,其作用域为整个程序。全局变量通常在函数外部声明,在程序开始执行时被初始化,在程序结束时销毁。
2.局部变量:在{ }内部定义的变量就是局部变量。局部变量只能在其所在的代码块(如函数、循环或条件语句)中访问,其作用域限定在该代码块内部。局部变量在代码块执行时创建,执行完毕后被销毁。
注意:当局部变量和全局变量在一个地方都可以使用的时候,局部优先。
变量的作用域是指变量在程序中可以被访问的范围,而变量的生命周期是指变量存在的时间段。作用域和生命周期是变量的重要属性,它们决定了变量在程序中的可见性和有效性。
1.作用域
作用域 (scope)是程序设计概念,通常来说,一段程序代码中所用到的名字并不总是有效\可用的,而限定这个名字的可用性的代码范围就是这个名字的作用域。
2.生命周期
变量的生命周期指的是变量的创建到变量的销毁之间的一个时间段
常量(Constants)是在程序中固定不变的值。与变量不同,常量的值在程序执行期间保持不变,不能被修改。常量在程序中有多种作用,如表示固定的数值、定义枚举类型、指定数组大小等。
常量可以分为以下几种类型:
字面常量是直接写在代码中的固定值,如整数常量、浮点数常量、字符常量和字符串常量。例如,int x = 10;中的10就是一个字面常量。
符号常量是通过宏定义或const关键字定义的常量。它们在程序中使用一个标识符来表示一个固定的值。例如,#define PI 3.14159或const int MAX_SIZE = 100;中的PI和MAX_SIZE就是符号常量。
枚举常量是在枚举类型中定义的常量。枚举类型是一种用户定义的类型,它由一组具有相同类型的常量组成。例如,enum Color {RED, GREEN, BLUE};中的RED、GREEN和BLUE就是枚举常量。
常量的使用可以提高程序的可读性和可维护性,避免了魔法数字的出现,使得代码更具有可理解性。在程序中,应根据需要选择适当的常量类型,并遵循命名规范来命名常量,以提高代码的可读性和可维护性。