📜  C 语言中的常量 vs 变量(1)

📅  最后修改于: 2023-12-03 15:13:48.442000             🧑  作者: Mango

C 语言中的常量 vs 变量

在 C 语言中,常量和变量是两个基本概念。常量在程序中具有固定的数值,不可更改;而变量的数值可以随着程序的执行而改变。

常量

常量是指在程序运行过程中不可改变的数值。在 C 语言中,常量可以分为以下两类:

  • 字面常量:指直接出现在程序中的数值。例如:13.14f'a' 等。其中,1 是整型字面常量,3.14f 是浮点型字面常量,'a' 是字符型字面常量。
  • 符号常量:也称为宏定义。一般使用 #define 关键字进行定义,定义时指定一个标识符和与之对应的数值,后续使用该标识符时,相当于直接使用了该数值。例如:#define PI 3.1415926。在预处理阶段,编译器会将程序中出现的 PI 替换为 3.1415926

常量的值一旦被定义,就不能被改变。例如,下面的代码是错误的:

int main() {
    const int num = 10;
    num = 20; // 错误:试图修改一个常量的值
    return 0;
}
变量

变量是指在程序运行过程中可以改变数值的量。在 C 语言中,变量需要先声明再使用。

变量可以分为以下两类:

  • 局部变量:定义在函数内部,只能在函数内部使用。函数调用时在栈上分配空间,函数结束时自动释放空间。
  • 全局变量:定义在函数外部,在程序整个运行期间都可以被访问使用。程序开始时在内存中分配空间,直到程序结束才释放空间。

变量需要指定类型和名称。例如,以下代码定义了一个整型变量 num

int num; // 定义一个整型变量

变量的值可以被修改。例如:

int main() {
    int num = 10;
    num = 20; // 正确:修改变量的值
    return 0;
}
总结

在 C 语言中,常量和变量是两个基本的概念。常量的值一旦被定义,就不能被改变;而变量的值可以被修改。常量分为字面常量和符号常量,而变量需要指定类型和名称。在声明变量时,建议使用关键字 const 明确指定常量,以提高代码的可读性和可维护性。