C语言-常见关键字详解

一、const

关键字const用于声明常量,赋值后,其值不能再被修改。

示例:

复制代码
const int MAX_COUNT = 100;

二、static

static关键字在不同情境下有不同作用:

1.函数中的静态变量:保留变量状态,仅初始化一次,生命周期延长至整个程序执行期间。

示例:

复制代码
void increment() {
    static int count = 0;
    count++;
    printf("Count: %d\n", count);
}

2.文件作用域的静态变量和函数:限制其作用域为当前文件,不被外部文件访问。

示例:

复制代码
static int internal_variable = 10; // 内部链接的静态变量

static void internal_function() {
    // 内部链接的静态函数
}

三、volatile

volatile关键字用于标记变量可能被多线程、硬件或操作系统等未知因素修改的情况。主要作用是告知编译器不要优化对该变量的访问,每次访问都要从内存中读取最新值。

示例:

复制代码
volatile int sensor_value; // 传感器值可能会被硬件修改

四、extern

extern关键字用于在不同文件中声明全局变量和函数,允许多个文件共享同一全局变量或函数。

示例:

复制代码
// 文件1:声明并定义全局变量
int global_var;

// 文件2:使用全局变量
extern int global_var;
int main() {
    printf("Global variable value: %d\n", global_var);
    return 0;
}

总结

以上关键字在C语言中扮演重要角色,通过合理使用,能够提升代码的可读性、可维护性和执行效率。在实际编程中,理解它们的作用及使用场景,可以更好地设计和优化程序结构。

相关推荐
Zwawa11 小时前
屏幕不止一种:OLED、LCD1602字符屏、TFT/IPS图形屏和串口屏怎么用,这与TTY和PTY又有什么关系
c语言·单片机·嵌入式
Fruiticecake11 小时前
C 程序员速通现代 C++(一):lambda、std::function、移动语义与智能指针
c语言·c++
田甲11 小时前
做一款 Type-C 母座读卡器:GL3224 双卡方案实测
c语言·开发语言
·present·16 小时前
CSAPP(lecture 13_02 Linking)
c语言·c++
wuyk5551 天前
Keil工具链-第05讲-启动文件与__main到底做了什么
c语言·stm32·单片机·嵌入式硬件·物联网
Navigator_Z2 天前
LeetCode //C - 1317. Convert Integer to the Sum of Two No-Zero Integers
c语言·算法·leetcode
冻柠檬飞冰走茶2 天前
字母移动游戏题解:贪心求最长可保留连续子串(附 C 实现)
c语言·开发语言·数据结构·算法·动态规划
Hhy_11072 天前
《C++深度解构06》手撕 string —— 从底层内存管理到深浅拷贝彻底吃透
c语言·开发语言·c++·学习·visual studio
曦樂~2 天前
Cpp面筋
c语言·c++
HUANGZHENXUAN1233 天前
最大子矩阵和:从 O(n⁴) 到 O(n³) 的列压缩 + Kadane
c语言·前端