【从0到1手把手带你学C语言】初始C语言1

文章目录

  • 1. 什么是C语言
  • 2. 第一个C语言程序
  • 3. C语言的数据类型
  • 4. 变量
    • 4.1 变量的定义方法
    • 4.2变量的命名
    • 4.3变量的分类
    • 4.4变量的作用域和生命周期
  • 5. 常量
    • 5.1 字面常量
    • 5.2 const修饰的变常量
    • 5.3 define定义的标识符常量
    • 5.4 枚举常量
  • 总结

1. 什么是C语言

C语言是一门通用计算机编程语言,广泛应用于底层开发。C语言的设计目标是提供一种能以简易
的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语
言。
尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的
C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超
级电脑等作业平台。
二十世纪八十年代,为了避免各开发厂商用的C语言语法产生差异,由美国国家标准局为C语言制
定了一套完整的美国国家标准语法,称为ANSI C,作为C语言最初的标准。 [1] 目前2011年12月8
日,国际标准化组织(ISO)和国际电工委员会(IEC)发布的C11标准是C语言的第三个官方标
准,也是C语言的最新标准,该标准更好的支持了汉字函数名和汉字标识符,一定程度上实现了汉
字编程。
C语言是一门面向过程的计算机编程语言,与C++,Java等面向对象的编程语言有所不同。
其编译器主要有ClangGCC、WIN-TC、SUBLIME、MSVC、Turbo C等。

什么叫做底层开发呢?
【从0到1手把手带你学C语言】初始C语言1_第1张图片
想必就清楚什么是底层开发了

2. 第一个C语言程序

我们在 学习C语言的时候,第一次接触的代码想必是hello world

#include
int main()
{
    printf("hello world");
    return 0;
}
这段代码虽然很简短,但是涵括了C程序的基本结构

• include是头文件,该头文件中有printf函数的定义
• main函数是主函数 程序运行时由系统调用,main函数时程序的入口 一个程序只有一个main函数
• 主函数的返回值是0

有时候我们写框架时是这么写的

int main()
{
    
}

void main()
{
    
}

int main(void)
{
    return 0;
}
上述三种写法虽然程序不会报错 但是要么不规范要么比较繁琐 不建议这么写

3. C语言的数据类型

C语言本身就含有一些数据类型 它们分别是

char        //字符数据类型
short       //短整型
int         //整形
long        //长整型
long long   //更长的整形
float       //单精度浮点数
double      //双精度浮点数

内存的最小单元是比特位 其次是字节 八个bit位等于一个字节(byte)1024个byte等于1kb
我们使用sizeof可以计算出每个类型所占的内存大小 单位是字节
如下

printf("%d\n", sizeof(char));
printf("%d\n", sizeof(short));
printf("%d\n", sizeof(int));
printf("%d\n", sizeof(long));
printf("%d\n", sizeof(long long));
printf("%d\n", sizeof(float));

【从0到1手把手带你学C语言】初始C语言1_第2张图片
注:%d是整形格式符,及打印在屏幕上的一定是整数:

4. 变量

生活中的有些值是不变的(比如:圆周率,性别,身份证号码,血型等等)
有些值是可变的(比如:年龄,体重,薪资)
不变的值,C语言中用常量的概念来表示,变的值
C语言中用变量来表示。

4.1 变量的定义方法

int age = 150;//整形用int定义
float weight = 45.5f;//单精度浮点数用float定义
char ch = 'w';//字符用chat定义

4.2变量的命名

规则如下
• 只能由字母(包括大写和小写)、数字和下划线( _ )组成。
• 不能以数字开头。
• 长度不能超过63个字符。
• 变量名中区分大小写的。
• 变量名不能使用关键字
注:变量命名尽量选择有意义的名字

4.3变量的分类

变量作用域是变量的可用性范围。 通常来说,一段程序代码中所用到的名字并不总是有效可用的,而限定这个名字的可用性的代码范围就是这个名字的作用域
变量按照作用域可以分为2类
• 全局变量 定义在主函数外面
• 局部变量 定义在某一个代码块内部
【从0到1手把手带你学C语言】初始C语言1_第3张图片
注:当全局变量和局部变量同名时,局部变量优先:

4.4变量的作用域和生命周期

作用域
作用域(scope)是程序设计概念,通常来说,一段程序代码中所用到的名字并不总是有效/可用
的而限定这个名字的可用性的代码范围就是这个名字的作用域。

  1. 局部变量的作用域是变量所在的局部范围。
  2. 全局变量的作用域是整个工程。
    生命周期
    变量的生命周期指的是变量的创建到变量的销毁之间的一个时间段
  3. 局部变量的生命周期是:进入作用域生命周期开始,出作用域生命周期结束。
  4. 全局变量的生命周期是:整个程序的生命周期。

5. 常量

C语言中的常量分为以下以下几种:
• 字面常量
• const 修饰的常变量
• #define 定义的标识符常量
• 枚举常量

5.1 字面常量

1 ,2,1.0,2.1,‘a’, “abcd”
这些具有固定含义得值称为字面常量

#include
int main()
{
int a = 2;
float f = 2.1f;
double d = 2.2;
char ch = 'a';
char str[] = "abcd";
return 0;
}
//上述中将字面常量赋值给各种类型的变量

注:当字面常量是小数时,默认小数为double类型,若要是字面常量为float类型,需要在小数后面加上f

5.2 const修饰的变常量

#include
int main()
{
int a = 10;
a = 20;
printf("%d", a);
//此时a 是可以改变值的变量
const int b = 10;
b = 20;//此时编译器会报错 原因在于b有const修饰 属于值不可以改变的变量
return 0;
}

【从0到1手把手带你学C语言】初始C语言1_第4张图片
可以看到 提示数组元素必须是常量值,说明const修饰的变量仍然是变量

5.3 define定义的标识符常量

#include
#define  MAX 10
int main()
{
printf("%d\n",MAX);//10
int arr[MAX];
return 0;
}

define 将标识符MAX 定义为常量10 以后编译器看见MAX直接当作10处理
arr【MAX】不会报错 说明MAX在编译器看来是常量

5.4 枚举常量

生活中有些东西是可以一一列举出来的例如:星期、性别、月份
将可以一一列举出来的常量称为枚举常量
枚举常量需要自己定义 按如下方式定义

#include
int main()
{
//此处声明了一个枚举类型 因为性别可以一一列举出来 所以另该类型名字叫做enum SEX
enum SEX 
{
MALE,//性别雄
FEMALE,//性别雌
SECRET//性别未知
};//MALE FEMALE SECRET都属于枚举常量
enum SEX sex = MALE;//用性别枚举类型定义了一个变量sex并初始化
int arr[SECRET];//说明枚举常量是常量
//观察一下枚举常量的值
printf("%d \n", MALE);      //0
printf("%d \n", FEMALE);    //1
printf("%d \n", SECRET);    //2
return 0;
}

注:枚举常量的默认是从0开始,依次向下递增1的

总结

本章内容知识没有进行深入的探讨知识点,鹏哥说,没吃过猪肉还没见过猪跑吗?本章及后续两张内容知识将C语言的知识点进行粗略的解释 只是见猪跑,所以有些内容可能不详细或者和您了解的有偏差,这很正常,后续的文章会详细介绍C中的每章知识点,如果您觉的对您有帮助,希望不要吝啬手中的赞,这对我来说很重要,这也会成为我学习的动力,感谢!

你可能感兴趣的:(C语言,c语言,开发语言,c++)