extern 声明

原创 2011年01月08日 21:46:00

使用了extern修饰了的变量只能在一个地方定义,其它地方都必须仅仅是声明。

举例,有a.c 和b.c两个文件;

a.c中  extern int n = 1;

那么b.c中引用这个n,只能声明:extern int n; 而不能定义extern int n = 2;

 

同样的,对于数组类型,也只能在一处定义,其余处声明,注意数组的声明方式:

int arr[];即[]表示这是个数组,但不写大小。

版权声明:本文为博主原创文章,未经博主允许不得转载。

C++中extern用于类

由于需要今天需要实现一个在B类设置某个属性的时候也需要及时将A类的某个属性设置,在C类设置某个属性的时候也需要及时将A类的某个属性设置,... 那么想到了用extern实现: aa.h #ifn...
  • u012500825
  • u012500825
  • 2015年01月07日 21:10
  • 2747

C语言中声明和定义的区别——分析extern关键词。

一直很迷惑C语言中的声明和定义的有些实践中的用法,说迷惑实践是因为声明和定义的概念上的区别是很明确的。 定义和声明的区别(主要针对变量): 定义是要为变量分配存储空间,还可以在定义的时候为变量指定...
  • littledouble
  • littledouble
  • 2015年06月03日 08:28
  • 1659

extern声明变量详解

昨天写完文章快零点,为了不浪费每天一次的群发资格,得赶在零点之前发送,刚给自己的个人微信号发了预览,Mac竟然死机了,看来一个月不关机还是会出点小问题。写的文章还没保存,这下只能是从手机复制粘贴发送到...
  • littlewhite1989
  • littlewhite1989
  • 2014年09月30日 14:13
  • 1268

变量声明和定义及extern

在讨论全局变量之前我们先要明白几个基本的概念: 1. 编译单元(模块):     在IDE开发工具大行其道的今天,对于编译的一些概念很多人已经不再清楚了,很多程序员最怕的就是处理连接错误(LI...
  • devilcash
  • devilcash
  • 2012年01月06日 14:45
  • 483

防止头文件被重复包含、extern、变量定义与声明的区别

#include文件的一个不利之处在于一个头文件可能会被多次包含,为了说明这种错误,考虑下面的代码: #include "x.h" #include "x.h" 显然,这里文件x.h被包含了两次...
  • saizo123
  • saizo123
  • 2016年11月14日 21:27
  • 427

C语言中声明和定义的区别——分析extern关键词。

一直很迷惑C语言中的声明和定义的有些实践中的用法,说迷惑实践是因为声明和定义的概念上的区别是很明确的。 定义和声明的区别(主要针对变量): 定义是要为变量分配存储空间,还可以在定义的时候为变量指定...
  • littledouble
  • littledouble
  • 2015年06月03日 08:28
  • 1659

定义和声明的区别,它们在头文件、源文件中的位置,extern的用法

1. 定义和声明的区别(变量,在被使用前必须被定义或声明)? 声明用于向程序表明变量的类型和名字;定义本身也是声明,当定义变量时声明了它的类型和名字;变量必须且只能被定义一次,但是可以被声明多次...
  • choctear
  • choctear
  • 2011年12月23日 11:18
  • 822

extern 声明外部变量

声明外部变量 现代编译器一般采用按文件编译的方式,因此在编译时,各个文件中定义的全局变量是 互相透明的,也就是说,在编译时,全局变量的可见域限制在文件内部。 创建一个工程,里面含有A.cpp...
  • fengkuangshixisheng
  • fengkuangshixisheng
  • 2014年10月16日 11:26
  • 902

C++中的extern声明变量详解

http://www.jb51.net/article/62350.htm extern声明变量无外乎如下两种: 1、声明全局变量 2、声明函数 今天我们只谈extern,什么...
  • qq_25600055
  • qq_25600055
  • 2016年06月15日 11:49
  • 154

C语言易混淆关键词详解-const, static, extern, typedef, 声明

Const Const关键词并不能把一个变量变成一个常量, 在符号前加上const表示这个符号不能被赋值, 即他的值对这个符号来说是只读的, 但并不代表这个值不能用其他方法去改变. 通过下面的例子就...
  • romaticjun2011
  • romaticjun2011
  • 2014年10月17日 15:14
  • 357
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:extern 声明
举报原因:
原因补充:

(最多只允许输入30个字)