C语言变量

一、数据类型

c语言中想要使用变量和常量,必须通过数据类型来结合使用,在c语言中存在很多的数据类型,例如:

char        //字符数据类型
short       //短整型
int         //整形
long        //长整型
long long   //更长的整形
float       //单精度浮点数
double      //双精度浮点数
//C语言有没有字符串类型?
  • 为什么出现这么的类型?

  • 每种类型的大小是多少?

#include 
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;
}

//输出对应类型所占空间的字节大小。

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

类型的使用:

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

二、变量、常量

生活中的有些值是不变的(比如:圆周率,性别,身份证号码,血型等等)

有些值是可变的(比如:年龄,体重,薪资)。

不变的值,C语言中用常量的概念来表示,变得值C语言中用变量来表示。

2.1 定义变量的方法

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

2.1.1变量的命名规范

  1. 变量名由字母、数字、下划线组成,但不能以数字开头

  2. 区分大小写,也就是说 C 语言中大写字母和小写字母是有区别的。

  3. 不能使用 C 语言的关键字作为变量名,例如 int、if 等。

  4. 变量名的长度一般不受限制,但是为了便于程序的阅读和书写,一般不要超过 8 个字符。

  5. 一般在定义变量时,采用驼峰法,即每个单词的首字母大写。

2.2 变量的分类

  • 局部变量

  • 全局变量

#include 
int global = 2019;//全局变量
int main()
{
    int local = 2018;//局部变量
    //下面定义的global会不会有问题?
    int global = 2020;//局部变量
    printf("global = %d\n", global);
    return 0;
}

总结:

上面的局部变量global变量的定义其实没有什么问题的!

当局部变量和全局变量同名的时候,局部变量优先使用。

ps:咱们现阶段一局部变量为主

2.3 变量的使用

#include 
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;
}
//这里介绍一下输入,输出语句
//scanf
//printf

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

作用域

作用域(scope)是程序设计概念,通常来说,一段程序代码中所用到的名字并不总是有效/可用

而限定这个名字的可用性的代码范围就是这个名字的作用域。

  1. 局部变量的作用域是变量所在的局部范围。

  2. 全局变量的作用域是整个工程。

生命周期

变量的生命周期指的是变量的创建到变量的销毁之间的一个时间段

  1. 局部变量的生命周期是:进入作用域生命周期开始,出作用域生命周期结束。

  2. 全局变量的生命周期是:整个程序的生命周期。

2.5 常量

C语言中的常量和变量的定义的形式有所差异。

C语言中的常量分为以下以下几种:

字面常量

  • const 修饰的常变量

  • #define 定义的标识符常量

  • 枚举常量

#include 
//举例
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);
    //注:枚举常量的默认是从0开始,依次向下递增1的
    return 0;
}

ps:上面例子上的 pai 被称为 const 修饰的常变量, const 修饰的常变量在C语言中只是在语法层面限制了

变量 pai 不能直接被改变,但是 pai 本质上还是一个变量的,所以叫常变量。

练习

判断变量是否正确以及其对应类型

你可能感兴趣的:(C语言,算法)