C语言定义和声明
来源:互联网 发布:防网络尖兵方法 编辑:程序博客网 时间:2024/05/19 06:39
什么是定义?什么是声明?它们有何区别?
定义:(编译器)创建一个对象,为这个对象分配一块内存并给它
取上一个名字,并且这块内存的位置也不能被改变。
。
例如
main.h里定义了一个int i = 5;
在a.c里包含头文件main.h
在b.c里包含头文件main.h
当a.c或者b.c单独编译时不会报错
但是当啊a.c和b.c编译成一个文件时将会报错(重复定义)
分析:
C语言编译过程:预处理-编译-汇编-链接
int i在头文件定义为全局变量
一个变量或对象在一定的区域内(比如函数内,全局等)只能被定义一次,a.o和b.o链接在一起时编译器会提示你重复定义同一个变量或对象
声明:
1.告诉编译器,这个名字已经匹配到一块内存上了,声明可以出
现多次。
2.告诉编译器,我这个名字我先预定了,别的地方再也不能用它来作为变量
名或对象名。
例如:void fun(int i, char c);函数参数的声明
定义声明最重要的区别:定义创建了对象并为这个
对象分配了内存,声明没有分配内存
阅读全文
0 0
- c语言定义和声明
- C语言定义和声明
- C语言中定义和声明
- C语言之声明和定义
- C 语言变量的声明和定义
- C语言中变量声明和定义
- C语言中的定义和声明
- c语言变量的声明和定义
- C语言中的声明和定义
- C语言定义和声明区别
- C语言中的声明和定义
- C语言中声明和定义详解
- C语言定义和声明的区别
- C语言中变量声明和定义
- C语言中的声明和定义
- C/C++语言语言中的声明和定义浅解
- C语言定义与声明
- C语言定义与声明
- 进制转化与a的b次方问题
- js取得IP
- 线程的几种可用状态及运行机制
- bzoj2223 [Coci 2009]PATULJCI(同bzoj3524)
- sql的执行顺序
- C语言定义和声明
- = 改为 in
- 网易面试题记录(题目来源-->牛客网)
- 64位驱动相对偏移的计算E8call
- 吴恩达关于dev / test sets的形象解释
- shiro配置
- 导出带有多个标签页的Excel表格代码
- 生成简单的Excel表格示例
- 【Shiro权限管理】15.Shiro授权流程分析