C/C++变量声明——extern关键字
2014-03-28 09:37
246 查看
extern关键字表示变量在文件以外定义的,或是在文件后面部分才定义的。在变量定义之前加上extern关键字表示声明一个变量但不定义它,例如:
extern int a;
extern关键字也可以用于函数声明。例如:
extern int fun1( int length, int width );
因为没有函数体,编译器必定把它作为声明而不是函数定义。extern关键字对函数来说是多余的、可选的。C语言的设计者并不要求函数声明使用extern,这可能有些令人遗憾;如果函数声明也要求使用extern,那么形式上与变量声明更加一致,从而减少混乱(但这就需要更多的输入,这也许能解释为什么不要求函数使用extern的原因)。
extern int a;
extern关键字也可以用于函数声明。例如:
extern int fun1( int length, int width );
因为没有函数体,编译器必定把它作为声明而不是函数定义。extern关键字对函数来说是多余的、可选的。C语言的设计者并不要求函数声明使用extern,这可能有些令人遗憾;如果函数声明也要求使用extern,那么形式上与变量声明更加一致,从而减少混乱(但这就需要更多的输入,这也许能解释为什么不要求函数使用extern的原因)。
相关文章推荐
- C++primer plus第六版课后编程题答案 6.1
- c语言学习之统计字符个数
- C++模板学习
- c++ 数组和指针
- C++中数据类型字节数和机器字长关系
- C/C++基本数据类型所占字节数
- C语言之Main函数返回值问题
- C++之C/C++内存对齐
- C++/C 内存大小
- C++之 extern C的作用详解
- C++笔记: 面向对象编程进阶
- MinGW + Eclipse + CDT进行C++开发的配置流程
- C语言里的左移和右移运算
- Windows命令行编译C++程序
- [C/C++基础知识] 那些被遗忘的链表知识
- C++中operator new 和 new operator小结以及对new 和 delete初步理解
- c++: 构造函数(constructor)与各种眼花缭乱的初始化(initialization)
- 平衡二叉树的构建 用函数回调来扩展程序 c语言实现
- 函数简介
- C语言字符串相关库函数的实现strcpy、memcpy、strncpy、strcat、strncpy、memset、memcpy、strcpy