0
点赞
收藏
分享

微信扫一扫

逐渐剖析C语言~

DT_M 2022-04-13 阅读 114
c语言

C语言初阶(上)

学习C语言由浅到深,我们先来了解C语言大概是什么样子的intro

初识C语言

什么是C语言

第一个C语言程序

#include <stdio.h>
int main()
{
	printf("Welcome to League of Legends!");
	return 0;
}
  • 我们来分析这个程序

printf的那一行是什么?

关于C语言的程序我们先认识到这里,以后大家会更详细的了解。

数据类型

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

每一个不同类型都有不同的大小,让我们看看他们的大小是多少

#include <stdio.h>
int main()
{
	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));
	printf("%d\n", sizeof(double));
	printf("%d\n", sizeof(long double));
	return 0;
}

sizeof是一个计算大小的操作符,单位是字节。%d是打印整形数据。\n是换行,也就是回车换行,这个都能看出来。printf双引号后面有个逗号,逗号后面是你要输出对应的%d,不然人家不知道你要打印哪个整形数据。

注意:存在这么多的类型,其实是为了更加丰富的表达生活中的各种值。
类型的使用:

char ch = 'w';
int weight = 120;
int salary = 20000;

上面对于一些基本的数据类型也都有了解释,现在不理解没关系,后面我们会说。

变量、常量

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

int age = 18;
float weight = 45.5f ;
char ch = 'w';

变量分类

  • 局部变量
  • 全局变量
    我用下面这段代码做一个示范
#include <stdio.h>
int global = 2019;//全局变量
int main()
{
    int local = 2018;//局部变量
    //下面定义的global会不会有问题?
    int global = 2020;//局部变量
    printf("global = %d\n", global);
    return 0;
}

变量的使用
变量是可以变化的值,让我们看下面的代码。

#include <stdio.h>
int main()
{
    int num1 = 0;
   int num2 = 0;
    int sum = 0;
    printf("输入两个操作数:>");
    scanf("%d %d", &num1, &num2);
    sum = num1 + num2;
    printf("sum = %d\n", sum);
    return 0; }

上面 num1,num2 sum 已经明确初始化是0了.
scanf这个函数是什么?是输入函数,双括号里面的%d %d和后面&num1 &num2是要输入的整形对象。(先了解一下)
在这里插入图片描述

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

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

例如

#include <stdio.h>
void add()
{
    printf("%d",a);
}
int main()
{
    int a=10;
    add();
    printf("%d",a);
    return 0;
}

常量
C语言中的常量和变量的定义的形式有所差异。
C语言中的常量分为以下以下几种:

  1. 字面常量
  2. const 修饰的常变量
  3. #define 定义的标识符常量
  4. 枚举常量
    什么是常量?无法被改变的值。
    比如,一只猫不可能变成一只狗对吧?10这个数字能变成11吗?我不是在说可以加上1等于11,而是说10这个数字不经过任何操作让他本身变成11的含义,10就是10,他自己永远表达不了11的意思。
    同理,常量就是无法被改变的值。
    例如:
#include <stdio.h>
//举例
enum Sex
{
	MALE,
	FEMALE,
	SECRET
};
//括号中的MALE,FEMALE,SECRET是枚举常量
int main()
{
	//字面常量演示
	3.14;//字面常量
	1000;//字面常量

	//const 修饰的常变量
	const float pai = 3.14f; //这里的pai是const修饰的常变量
	pai = 5.14;//是不能直接修改的!

	//#define的标识符常量 演示
    #define MAX 100
	printf("max = %d\n", MAX);

	//枚举常量演示
	printf("%d\n", MALE);
	printf("%d\n", FEMALE);
	printf("%d\n", SECRET);
	return 0;
}

上面的数字什么的就是字面常量。
const修饰过的变量也不能被改变,这段代码在编译器里会出现问题。
在这里插入图片描述
看到编译器会在pai这个变量下面有红线,这是编译器给你的报错了,显示这个值无法被修改,也就是说 const 修饰过的变量是无法被修改的。
注:
上面例子上的 pai 被称为 const 修饰的常变量, const 修饰的常变量在C语言中只是在语法层面限制了变量 pai 不能直接被改变,但是 pai 本质上还是一个变量的,所以叫常变量。
枚举常量在下面打印了结果为:

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

最后的#define 定义的标识符常量

我们的初始C语言(上)到i这里就完结了,今天主要了解了以下内容。
什么是C语言
第一个C语言程序
数据类型
变量、常量

本章重点是:
1.一个程序只能由一个main函数。
2.数据类型很重要,必须声明这个变量是什么类型,不然就是现实生活中的“不明生物”!
3.变量可以被修改,常量是不可以被修改的。

本章到此为止,请路过的大佬们指正错误!谢谢!

举报

相关推荐

0 条评论