这篇文章主要给大家介绍了关于C语言未初始化的局部变量是多少,文中通过示例代码以及图文介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起学习吧。
在演示一个实际代码行为之前,先给出一个知识,CPU不认识变量,更无法识别变量的名字,CPU只会从特定的内存位置取值或者将值存到特定的内存位置,因此当问一个变量的值是多少的时候,必须要知道这个变量对应的值被保存在什么地方。
来看下面的代码:
#include <stdio.h> void func1() { int a; printf("func1:%d\n", a); a = 12345; } void func2() { int b; printf("func2:%d\n", b); } void func4() { int d; printf("func3:%d\n", d); } void func3() { int c; printf("func3:%d\n", c); c = 54321; func4(); } void test_call() { func3(); } int main(int argc, char **argv) { func1(); func2(); test_call(); }
我们有func1~func4一共4个函数,其内部均有一个未初始化的局部变量,它们的值到底是多少呢?