C语言的extern关键字用法

在调试程序是,有一个参数需要在多个函数之间传递,因为是作为调试参数,不想将参数引入到函数中。

很自然的想到使用全局变量来表示这个公共参数,工程代码的结构如下:

main.c test.c test.h

全局变量 g_paramter

新建一个pubparamter.h文件:

内容如下:

#ifndef _PUBPARAMTER_H_

#

时间: 2024-08-30 12:39:46

C语言的extern关键字用法的相关文章

extern关键字用法总结(顺带初始化和赋值的区别)

1.初始化和赋值的区别 初始化的含义是创建变量时赋予其一个初始值. 赋值是把对象的当前值擦除,用新值代替. 2.extern关键字的作用 C++的分离式编译机制可以让程序分为多个文件独立编译,如果要在多个文件中使用同一个变量,如果重复定义将发生程序错误,需要使用extern关键字来声明在另一个文件中已经定义过的变量.(如果为extern关键字声明的变量赋初值将抵消掉extern的作用,函数体内这样做将引发错误) 1 int a=0: //定义 2 3 extern int a: //声明 4 5

《OOC》笔记(1)——C语言const、static和extern的用法

<OOC>笔记(1)——C语言const.static和extern的用法 C语言中const关键字用法不少,我只喜欢两种用法.一是用于修饰函数形参,二是用于修饰全局变量和局部变量. 用const修饰的函数形参 直接修饰 一个形如 int Minus(const int a, const int b, int testCase); 的函数,const的意义是什么呢? 答:参数a被const修饰,说明在Minus函数内,编译器不允许a被别的变量(例如x)赋值(修改).参数b同理. 如果你写了a

【C语言】20-static和extern关键字2-对变量的作用

本文目录 一.在Java中,全局变量的定义没有严格的位置规定 二.在C语言中,全局变量定义的位置是有限制的 三.重复定义同一个变量 四.不同源文件中的同名变量 五.static关键字 六.static和extern的总结 说明:这个C语言专题,是学习iOS开发的前奏.也为了让有面向对象语言开发经验的程序员,能够快速上手C语言.如果你还没有编程经验,或者对C语言.iOS开发不感兴趣,请忽略 上一讲介绍了static和extern对函数的作用,static用来定义一个内部函数,不允许其他文件访问:e

C语言 20-static和extern关键字2-对变量的作用

本文目录 一.在Java中,全局变量的定义没有严格的位置规定 二.在C语言中,全局变量定义的位置是有限制的 三.重复定义同一个变量 四.不同源文件中的同名变量 五.static关键字 六.static和extern的总结 说明:这个C语言专题,是学习iOS开发的前奏.也为了让有面向对象语言开发经验的程序员,能够快速上手C语言.如果你还没有编程经验,或者对C语言.iOS开发不感兴趣,请忽略. 上一讲介绍了static和extern对函数的作用,static用来定义一个内部函数,不允许其他文件访问:

【转载】理解C语言中的关键字extern

原文:理解C语言中的关键字extern 最近写了一段C程序,编译时出现变量重复定义的错误,自己查看没发现错误.使用Google发现,自己对extern理解不透彻,我搜到了这篇文章,写得不错.我拙劣的翻译了一下.(原文:http://www.geeksforgeeks.org/understanding-extern-keyword-in-c/)   我确定这篇文章对c语言的初学者会有很大的帮助,因为这将使他们更好更熟练的使用c语言.所以就让我先来说说extern关键字在变量和函数上的应用.最基本

18-C语言static和extern关键字1-对函数的作用

一.extern与函数 在第三讲和第四讲中,我提到过一句话:如果一个程序中有多个源文件(.c),编译成功会生成对应的多个目标文件(.obj),这些目标文件还不能单独运行,因为这些目标文件之间可能会有关联,比如a.obj可能会调用c.obj中定义的一个函数.将这些相关联的目标文件链接在一起后才能生成可执行文件. 先来理解2个概念: 外部函数:如果在当前文件中定义的函数允许其他文件访问.调用,就称为外部函数.C语言规定,不允许有同名的外部函数. 内部函数:如果在当前文件中定义的函数不允许其他文件访问

extern关键字的一般用法

extern关键字会提升变量或者函数的逼格,使得它们可以跨文件被访问.话虽然是这么说,使用这个关键字必须要注意一些东西. 首先,你得在cpp文件里面实现这些全局变量和全局函数,这是最基本的,然后只需要在需要用到这些变量和函数的文件里声明一下,用extern修饰声明,这样弄完之后就可以随意使用这些全局变量和全局函数了.请不要为编译器担心,担心它们找不到这些东西,只要你实现了,不怕编译器找不到. 在别的文件里写一堆的extern声明显得特别不专业,也显得代码十分臃肿,有没有好的做法呢?有的. 我们一

黑 马 程 序 员_视频学习总结&lt;C语言&gt;----07 static和extern关键字、typedef

---------------------- ASP.Net+Unity开发..Net培训.期待与您交流! ---------------------- 一.外部函数 外部函数:如果在当前文件中定义的函数允许其他文件访问.调用,就称为外部函数.C语言规定,不允许有同名的外部函数 二.内部函数 内部函数:如果在当前文件中定义的函数不允许其他文件访问.调用,只能在内部使用,就称为内部函数.C语言规定不同的源文件可以有同名的内部函数,并且互不干扰. 三.static.extern与函数的总结 1.在定

【C语言】19-static和extern关键字1-对函数的作用

本文目录 一.extern与函数 二.static与函数 三.static.extern与函数的总结 说明:这个C语言专题,是学习iOS开发的前奏.也为了让有面向对象语言开发经验的程序员,能够快速上手C语言.如果你还没有编程经验,或者对C语言.iOS开发不感兴趣,请忽略 上一讲中大致介绍了变量的类型,不同类型的变量有不同的存储类型.不同的生命周期.不同的作用域.这讲介绍2个比较重要的关键字:static和extern. static和extern不仅可以用在变量上,还可以用在函数上.这讲先介绍它