400 028 6601

建站动态

根据您的个性需求进行定制 先人一步 抢占小程序红利时代

C 语言变量

变量(variable)可以理解成一块内存区域,通过变量名,可以引用这块内存区域,获取里面存储的值。

创新互联于2013年创立,先为岳西等服务建站,岳西等地企业,进行企业商务咨询服务。为岳西企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

变量声明

C 语言的变量,必须先声明后使用,如果一个变量没有声明,就直接使用,会报错。

声明变量时,必须把变量的类型告诉编译器。

int height; // 声明了变量 height,并且指定类型为 int(整数)。

变量赋值

C 语言会在变量声明时,就为它分配内存空间,但是不会清除内存里面原来的值。

这导致声明变量以后,变量会是一个随机的值,所以变量一定要赋值以后才能使用。

int num = 42;
num = 43;
int x = 1, y = 2; // 多个相同类型变量的赋值,可以写在同一行。

赋值表达式有返回值,等于等号右边的值。

int x;
printf("%i", x = 2); // 输出 2

C 语言有左值(left value)和右值(right value)的概念。

左值是可以放在赋值运算符左边的值,一般是变量;右值是可以放在赋值运算符右边的值,一般是具体的值。

变量命名

标识符(identifier)命名有严格的规范。

auto, break, case, char, const, continue, default, do, double,
else, enum, extern, float, for, goto, if, inline, int, long, 
register, restrict, return, short, signed, sizeof, static, struct,
switch, typedef, union, unsigned, void, volatile, while

变量作用域

作用域(scope)指的是变量生效的范围。

作用域分类

C 语言的变量作用域主要有两种:文件作用域(file scope)和块作用域(block scope)。

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

由大括号({})组成的代码块,它形成一个单独的作用域。

凡是在块作用域里面声明的变量,只在当前代码块有效,代码块外部不可见。

int a = 12;

if (a == 12) {
  int b = 99;
  printf("%d %d\n", a, b);  // 12 99
}

printf("%d\n", a);  // 12
printf("%d\n", b);  // 出错,变量 b 是在if代码块里面声明的,所以对于大括号外面的代码,这个变量是不存在的。

作用域嵌套

代码块可以嵌套,内层代码块可以使用外层声明的变量,但外层不可以使用内层声明的变量。

如果内层的变量与外层同名,那么会在当前作用域 覆盖 外层变量。

{
  int i = 10;

  {
    int i = 20;
    printf("%d\n", i);  // 20
  }

  printf("%d\n", i);  // 10
}

参考: C 语言教程


新闻名称:C 语言变量
文章起源:http://mbwzsj.com/article/dsoiggd.html

其他资讯

让你的专属顾问为你服务