static:作用:1、进行内部链接指定(将全局变量或者函数限定为在本文件内可用)      2、改变局部变量的生命周期(使得局部变量存储在静态区,在整个程序结束时才释放)      3、定义一个变量时,加上static前缀,定义的变量默认初始化为0;extern:1、进行外部链接指定(使得全局变量或者函数在其他文件内也可以使用)&nbs            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2016-04-04 13:17:05
                            
                                859阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            static extern const volatileC语言中的对于变量的定义方式有很多种,使用的地方也有所不同,这边就对几种类型进行一个总结,对于实际编程的使用或面试时都会有很大的帮助。1. static:静态变量a、当我们把一个全局变量声明为static时:只有它的作用范围变为本源文件,也就是属性由external变为internal,其它不变;b、当我们把函数声明为static...            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-01-07 10:19:25
                            
                                89阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Volatile  在C语言中,还有一个并不经常使用但却非常有用的关键字volatile。那么使用volatile关键字究竟能干什么呢?接下来我将就此问题进行讨论。  一个使用volatile关键字定义变量,其实就是告诉编译系统这变量可能会被意想不到地改变。那么编译时,编译器就不会自作主张的去假设这个变量的值,而进行代码的优化了。确切的说就是,编译器在编译代码时,优化器每次遇到这个变量,都会到内存            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-01-02 09:19:18
                            
                                71阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            =            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-07-17 00:07:42
                            
                                219阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Mutable&const&volatile&extern&Static            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2013-12-03 18:14:30
                            
                                452阅读
                            
                                                                             
                 
                
                             
         
            
            
            
              就像大家更熟悉的const一样,volatile是一个类型修饰符(type specifier)。它是被设计用来修饰被不同线程访问和修改的变量。如果不加入volatile,基本上会导致这样的结果:要么无法编写多线程程序,要么编译器失去大量优化的机会。    volatile的作用是: 作为指令关键字,确保本条指令不会因编译器的优化而省略,且要求每次直接读            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                            精选
                                                        
                            2015-11-19 10:49:04
                            
                                1393阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Volatile关键字Volatile就是防优化。Volatile一般和硬件有关,指向硬件的内容可能我们需要不要让编译器去优化,每次都要读取那里的内容。比如我们在实际操作中有一个键盘,我们查看一个按键是否被按下,就是通过读取内存里面关于按键状态的高低电平来识别。那么我们怎么来读取这一个位里面的状态(0或1)?我们能够访问到最小的内存地址就是一个字节,而一个字节里面有8个位。所以我们只能利用一个un            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-02 10:19:23
                            
                                39阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            目录前言关键字 - volatile关于const与volatile关键字-struct空结构体多大struct的内存对齐柔性数组struct与class的区别关键字-unionunion和大小端关键字-enumenum 与 #define 的区别关键字-typedeftypedef 与 #define的区别前言本章节主要讲解:深入关键字volatile深入关键字struct深入关键字union深            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-01-25 19:10:26
                            
                                18阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            1. 局部变量: 
局部变量也叫自动变量, 它声明在函数开始, 生存于栈, 它的生命随着函数返回而结束. 
#include <stdio.h>
int main(void)
{
    auto int i = 9; /* 声明局部变量的关键字是 auto; 因可以省略, 几乎没人使用 */   
    printf("%d\n", i);  
    g            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                            精选
                                                        
                            2008-12-31 12:32:30
                            
                                1704阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            C语言是一门广泛应用于系统级编程的高级编程语言,它提供了很多关键字和特性,其中包括static、volatile和extern。这些关键字有助于我们在编写C代码时更加灵活和高效。在本篇博客中,我们将深入探讨这些关键字的用法和作用。static在C语言中,static是一种用于指定变量或函数作用域的关键字。具体来说,它有以下两种用法:1. 静态变量在函数内部定义的变量默认情况下都是自动变量,它们在函            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-07-22 21:22:25
                            
                                704阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            你能很随意地说出C语言中 auto,register,volatile,extern,static,const这几个关键字的含义和用法么?      auto  这个关键字用于声明变量的生存期为自动。    C程序是面向过程的,在C代码中会出现大量的函数模块,每个函数都有其生命周期(也称作用域),在函数生命周期中声明的变量通常叫做局部变量,也叫自动变量。    auto 变量是用堆栈(stack)            
                
                    
                        
                                                                            
                                                                                        原创
                                                                                    
                            2013-10-29 23:30:00
                            
                                975阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            
auto   这个这个关键字用于声明变量的生存期为自动,即将不在任何类、结构、枚举、联合和函数中定义的变量视为全局变量,而在函数中定义的变量视为局部变量。这个关键字不怎么多写,因为所有的变量默认就是auto的。 
register   这个关键字命令编译器尽可能的将变量存在CPU内部寄存器中而不是通过内存寻址访问以提高效率。 
static   常见的两种用途:     1>统计            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                            精选
                                                        
                            2008-12-31 12:17:59
                            
                                525阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            源自:http://tech.163.com/06/0118/09/27O66HCC0009159Q.html时常在cpp的代码之中看到这样的代码:#ifdef __cplusplus extern "C" { #endif //一段代码 #ifdef __cplusplus } #endif这样的代码到底是什么意思呢?            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2010-11-08 17:47:00
                            
                                89阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            对外提供动态库接口时,.h文件中的函数声明多以 C 方式展现;而动态库的实现可能是 C 和 C++ 的混合编程,这样就需要 extern "C"; 通常.c/.cpp文件起始会包含自己的.h,这样在预处理时展开,函数被声明且告诉编译器使用 C 形式编译,这样动态库里的的函数符号就是函数名称。 #if ...            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2021-10-28 10:56:00
                            
                                257阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            目录extern "C"1.C++与C编译区别2.C++调用C函数2.C中调用C++函数extern “C”1.C++与C编译区别在C++中常在头文件            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-03-04 06:27:49
                            
                                138阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            extern用法注意(转)
用#include可以包含其他头文件中变量、函数的声明,为什么还要 extern关键字,如果我想引用一个全局变量或  函数a,我只要直接在源文件中包含#include<xxx.h> (xxx.h包含了a的声明)不就可以了么,为什么还要用extern 呢??这个问题一直也是似是而非的困扰着我许多年了,今天上网狠狠查了一下总算小有 所获了:
头            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                            精选
                                                        
                            2012-10-18 10:53:53
                            
                                512阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            extern "C" 被 extern 限定的函数或变量是 extern 类型的 被 extern "C" 修饰的变量和函数是按照 C 语言方式编译和链接的 extern "C" 的作用是让 C++ 编译器将 extern "C" 声明的代码当作 C 语言代码处理,可以避免 C++ 因符号修饰导致代            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2019-03-29 09:54:00
                            
                                147阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            int main()
{
	//extern:声明外部符号
	extern int gloe;
	printf("%d", gloe);
	return 0;
}            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-07-17 16:55:07
                            
                                60阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            前些天,编程序是用到了很久以前写的C程序,想把里面的函数利用起来,连接发现出现了找不到具体函数的错误:以下是假设旧的C程序库C的头文件/*-----------c.h--------------*/#ifndef _C_H_#define _C_H_extern int add(int x, int y);#endifC的源文件/*-----------c.c--------------*/in            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2021-08-23 13:38:32
                            
                                186阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            extern  1.引言 C++语言的创建初衷是“a better C”,但是这并不意味着C++中类似C语言的全局变量和函数所采用的编译和连接方式与C语言完全相同。作为一种            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2022-09-16 09:33:45
                            
                                69阅读