C 语言变量详解

1. 变量的重要性

1.1 为什么需要变量

变量是程序中不可或缺的组成单位,是最基本的存储单元。

1.2 初识变量

  • 变量概念

    • 内存中的一块区域,其数据可以在同一数据类型范围内不断变化。
    • 通过变量名访问内存区域,获取存储的值。
    • 变量由三个要素组成:数据类型变量名存储的值
    • C语言中,变量声明格式为:数据类型 变量名 = 变量值
  • 变量的作用:用于在内存中保存数据。

  • 使用变量注意

    • 每个变量必须先声明再使用。
    • 不同数据类型占用的空间大小不同。
    • 一旦声明,变量类型不能在运行时修改。

1.3 变量的声明与赋值

步骤1:变量的声明

格式:

数据类型  变量名;  //声明变量的语句以分号结尾

示例1:

int width;

示例2:

int width, height;  // 可同时声明多个同类型变量
步骤2:变量的赋值

变量声明时,为其分配内存空间,但不会清除内存里的原值。因此,变量声明后可能是随机值,需在使用前赋值。

int age; //变量的声明
age = 18;  //变量的赋值

变量声明与赋值可写在一行。

int age = 18;

多个同类型变量的赋值可在同一行。

int a = 1, b = 2;

1.4 变量的作用域(scope)

  • 变量的作用域:定义所在的一对{ }内。
  • 变量只在其作用域内有效。
  • 同一作用域内不能定义重名变量。
  • C语言的变量作用域有文件作用域和块作用域。

文件作用域:在源码文件顶层声明的变量,从声明位置到文件结束都有效。

int x = 1;
int main() {
	printf("%d\n", x);
    return 0;
}

块作用域:由大括号( {} )组成的代码块形成一个独立作用域。在块作用域里声明的变量只在当前代码块有效。

int main() {
    int m = 10;
    if (m == 10) {
        int n = 20;
        printf("%d %d\n", m, n);  // 10 20
    }
    printf("%d\n", m);  // 10
    printf("%d\n", n);  // 错误,超出作用域
    return 0;
}

函数和 for 循环是最常见的块作用域,内部声明的变量对外部不可见。

1.5 变量按类型的分类

C语言中的变量按数据类型分为:

  • 基本数据类型(整型、浮点型、字符型、布尔型)
  • 复合数据类型(数组、结构体、联合体)
  • 空类型(void)

以上是C语言常见类型,后续版本可能会有新增类型。在C语言中,没有字符串类型,用字符数组表示字符串。

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