C语言基础:局部与全局变量解析

需积分: 15 30 下载量 111 浏览量 更新于2024-07-13 收藏 682KB PPT 举报
"这篇资料详细介绍了C语言中的局部变量和全局变量的概念,同时涉及C语言的历史、特点、优缺点以及基本编程流程。" 在C语言中,变量是存储数据的容器,它们分为两种主要类型:局部变量和全局变量。局部变量在函数内部声明,其作用域仅限于该函数的花括号内,也就是说,它们只在声明它们的代码块中可见。这些变量在每次函数调用时都会被创建和销毁,因此它们的生命周期是短暂的。C99标准引入了更小的作用域规则,使得局部变量可以在更具体的代码段中存在。 局部变量默认具有自动存储期限,这意味着它们在执行到声明它们的语句时被创建,当离开它们的作用域时被销毁。此外,还有一种特殊的局部变量类型,即静态局部变量。静态局部变量拥有静态存储期限,即使函数调用结束,它们也不会被销毁,而是保持其值,等待下一次函数调用时继续使用。尽管如此,它们仍然保持块作用域,仅在声明它们的函数内部可见。 形式参数可以看作是特殊类型的局部变量,它们在每次函数调用时被初始化,用于接收调用者传递的值。与普通局部变量不同,形式参数不是每次调用时都会被重新创建,而是使用调用时提供的参数值。 全局变量,又称为外部变量,是声明在函数外部的变量。它们在整个源代码文件中都可见,具有静态存储期限,意味着它们在程序开始执行时被创建,并在程序结束时销毁。全局变量在整个程序的生命周期内保持其值,这使得它们在需要在多个函数之间共享数据时非常有用,但也可能导致命名冲突和管理难度增加。 C语言是一种强大的编程语言,源于1973年,被广泛用于底层系统编程和各种应用开发。它的优点包括高效性、可移植性和灵活性,但也因其相对宽松的错误检查和易于隐藏问题而受到批评。编写C程序通常包括预处理、编译和连接三个步骤,GCC是广泛使用的C编译器,支持多种语言并可在多种操作系统上运行。通过指定不同的选项,如`-c`、`-o`和`-std`,可以控制编译过程。在简单的"Hello World"程序中,可以看到`#include`指令用于包含头文件,`main`函数作为程序执行的起点,以及`printf`函数用于输出字符串,这些都是C语言的基本元素。