C语言基础知识详解:变量、类型与常量

需积分: 14 3 下载量 39 浏览量 更新于2024-09-10 收藏 11KB TXT 举报
“C语言理论知识小记” C语言是一种强大的编程语言,被广泛用于系统编程、嵌入式开发以及各种应用程序的构建。本资源主要涵盖了C语言的基础理论知识,包括令牌分类、数据类型、内存管理、变量声明与定义、左值与右值的概念,以及常量的定义和存储类。 C语言的令牌包括关键字、标识符、常量、字符串和符号。这些构成了程序的基本元素。例如,`sizeof`是一个关键字,用于获取对象或类型的存储字节数。`FLT_MIN`、`FLT_MAX`和`FLT_DIG`是预定义的浮点常量,分别表示float类型的最小值、最大值和精度值。`malloc()`函数则用于动态内存分配,返回一个void指针,可以转换为任何数据类型。 C语言的变量基本类型包括:char、int、float、double和void。值得注意的是,C语言区分字母的大小写,这在编写代码时非常重要。变量的声明和定义是有区别的。声明只是告诉编译器变量的类型,而定义会分配实际的存储空间。例如,`int i;`即是声明也是定义,而`extern int i;`只声明不定义。 C语言中的左值(Lvalue)和右值(Rvalue)是理解赋值操作的关键。左值表达式是指向内存位置的,可以出现在赋值操作的两边;右值是存储在内存中的数值,只能出现在赋值操作的右边,不能被赋值。变量是左值,数值字面量和常量是右值。 定义常量,C语言提供了两种方式:`#define`预处理器宏和`const`关键字。例如,`#define LENGTH 20`或`const int LENGTH = 10`。常量通常用大写字母表示,以区别于变量。 C语言的存储类包括`auto`、`register`、`static`和全局变量。`auto`是局部变量的默认存储类;`register`用于尝试将变量存储在寄存器中以提高效率,但不保证成功;`static`使得局部变量在函数调用间保持其值,全局变量使用`static`修饰则限制其作用域仅在声明它的文件内。 了解这些基础知识是掌握C语言编程的关键,它们构成了编写高效、可靠的C程序的基础。