变量(Variable)

C 语言中,所有变量必须先声明后使用(即先声明后初始化)。

声明 & 定义 & 初始化

声明(declaration)通常放在函数起始处,在任何可执行语句(executable statement)之前。声明用于描述变量的属性,它由一个 类型名 和 一个 变量列表 组成。

声明的目的是为了告诉编译器变量的类型,并指示编译器在内存中为变量保留空间。

声明变量并不会为变量分配内存空间,它只发生在变量定义(definition)上。

  • 变量的声明(Declaration)

声明用于指定变量、函数、类、命名空间等程序的名称。

未涉及内存的分配。可以多次声明。

// 声明 a 是一个已经定义了的外部变量,变量类型可以去掉
extern int a;

// 函数的声明
int add (int p1, int p2);

Though you can declare a variable multiple times in your C program, it can be defined only once in a file, a function, or a block of code.

  • 变量的定义(Definition)

涉及对变量的内存分配。仅可以定义一次。初始值是 NULL

外部变量的定义在所有函数之外。

data_type variable_name;
or
data_type variable1, variable2, …, variablen;
  • 变量的初始化(Initialization)

变量初始化意味着为变量赋值。

data_type variable_name=constant/literal/expression;
or
variable_name=constant/literal/expression;

可以在一个语句中用单个值初始化多个变量,如:a=b=c=d=0

标识符(identifier)

C 语言的标识符是一个用于标识变量、函数或其他用户自定义项的名字。

C89 中,以字母(A-Za-z)开头(紧接着是零个或多个 A-Za-z0-9)的字母和数字序列。

C99 中,以字母(A-Za-z)或下划线(_)开头(紧接着是零个或多个 A-Za-z0-9_)的字母和数字序列。

C 语言不允许在标识符中存在标点符号(如:@$%)。

C 语言是一种大小写敏感(case-sensitive)的编程语言,所以变量 abc、Abc 和 ABC 都不相同。

变量名由字母(A-Za-z)、数字(0-9)和下划线(_)组成,且必须以字母或下划线开头。

参考:

mohd       zara    abc   move_name  a_123
myname50   _temp   j     a23b9      retVal PI

示例

#include <stdio.h>

int main()
{
    int x, y;   // 声明
    int z = 1;  // 初始化声明(依然遵循 “先声明后使用” 原则)

    // 默认值都是 0
    printf("x is %d, y is %d\n", x, y)

    x = 4; // 初始化
    y = 2; // 初始化

    printf("x is %d, y is %d, z is %d\n", x, y, z)

    return 0;
}

results matching ""

    No results matching ""