声明与定义
来源:互联网 发布:javascript面试题目 编辑:程序博客网 时间:2024/05/17 22:09
int i; /*声明*/
int i = 0; /*定义*/
void fun(int a); /*声明*/
void fun(int a){return a+3;} /*定义*/
声明和定义的最大区别就是:
声明是不占内存的,定义是分配了内存。
注:main.c和test.c都在同一个工程目录下
例一:
在main.c中
void main(void) /*定义*/
{
printf("test");
}
在test.c中
void main(void) /*定义*/
{
printf("test");
}
编译出错,提示重复定义
例二:
在main.c中
int i = 1;/*定义*/
void main(void)
{
fun();
printf("%d/n", i);
}
在test.c中
int i;/*声明*/
void fun(void) /*定义*/
{
i = 3;
}
编译无错,输出3;
例三:
在main.c中
int i = 3;/*定义*/
int j = 4;/*定义*/
void main(void)
{
fun();
printf("%d %d/n", i, j);
}
在test.c中
double i;/*声明*/
void fun(void) /*定义*/
{
i = 0.0;
}
编译不报错,输出0 0
摘自亚嵌的视频
- 函数定义与声明
- 声明与定义
- 定义与声明
- 声明与定义
- 定义与声明
- 声明与定义
- 变量 声明与定义
- 变量定义与声明
- 定义与声明
- 变量声明与定义
- 声明与定义
- C++ 声明与定义
- 声明与定义
- 变量声明与定义
- 声明与定义
- 定义与声明
- C++声明与定义
- 声明与定义
- MyEclipse插件--SVN升级
- Mylyn 2.0,集成任务和自动上下文管理
- Linux下Mysql
- c++ STL
- UTF-16、UTF-16BE、UTF-16LE编码方式的区别
- 声明与定义
- Flex通过javascript读写cookie
- 2012-12-23
- Asp.NET生成静态页面并分页
- ASP.net 指定textBox输入文本为数字 OnKeyPress方法
- 怎么有效的提高页面的打开速度
- 按某字段合并字符串之一(简单合并)
- Java Web系统常用的第三方接口
- Oracle启动或者关闭Archive log的方法