C语言变量是否必须初始化?

一、问题

        在使⽤变量时,⾸先要对其定义,然后进⾏初始化,那么变量是否必须初始化呢?

二、解答

        在C语⾔程序中,通常需要对⼀些变量设定初值。C语⾔允许在定义变量的同时给变量赋初值,这个过程就是变量的初始化过程。

例如:
int a=1;
float b=3.14;
char c='v';
该代码分别对a,b,c进⾏初始化

还可以将其写成:
int a;
  a=1;
float b;
  b=2;
char c;
  c=v;
这段代码分别对a,b,c进⾏赋值,⽽不是进⾏初始化。
看下⾯的⼀段代码。
int t,a=2,b=3;
f=a;
a=b;
b=t;
⾸先对a和b进⾏初始化,然后对t进⾏赋值操作,这⾥t不⽤初始化。
  •  注意:

        若对⼏个变量赋相同的初值,应写成:“int a=1,b=1,c=1;”⽽不能写成 “int a=b=c=1;”。

赋值与赋初值有什么不同?
    ⼆者的区别在于:为变量赋值是通过赋值表达式在运⾏期间动态赋值,⽽为变量赋初值则是在定义变量
的同时在编译时静态赋值。

如对a进⾏赋值,对b进⾏赋初值,形式如下
int a,b=3;
a=2;
为变量赋值占⽤的是运⾏时间,⽽为变量赋初值占⽤的是编译时间。

三、总结

        变量不是⼀定要初始化的,也可以先进⾏定义,再进⾏赋值,这和初始化的效果是⼀样的。但是如果想提⾼运⾏效率,就得对变量进⾏初始化。

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