这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » C语言——-定义与声明——问题的讨论

共11条 1/2 1 2 跳转至

C语言——-定义与声明——问题的讨论

专家
2013-05-12 11:17:19     打赏

什么是定义?什么是声明?它们有何区别?

例子:

(A)int i ;

(B)extern int i

哪个是定义?哪个是声明?或者都是定义或者都是声明?




关键词: 定义     声明     讨论    

高工
2013-05-12 11:18:44     打赏
2楼
A定义,B声明,哈哈哈

专家
2013-05-12 11:31:20     打赏
3楼
说说两者的区别

院士
2013-05-12 13:29:38     打赏
4楼

定义具有实体。

声明只需要说一下即可。



专家
2013-05-14 09:17:59     打赏
5楼

A是定义,B一般是另一个源文件里已经定义,在此使用必须进行声明;二者的作用域不一样,A的作用域只在定义的源文件里起作用,B的作用域是整个程序。


高工
2013-05-14 10:44:04     打赏
6楼

A是定义的话,是不是需要赋值??


要是没赋值,那么 这个变量也就不会在内存中分配空间了吧!!


助工
2013-05-14 20:39:01     打赏
7楼
应该是给分配空间的 有些编译器没貌似会自动赋值成0

高工
2013-05-14 21:35:58     打赏
8楼
定义是创造,声明是挂牌。

我也再举个例子吧。

void init(void);//声明

extern void task();//外部声明

void main()

{

   init();

    while(1)task();

}

void init()    //定义

{

     <代码>

}


高工
2013-05-15 08:47:05     打赏
9楼
要是程序没用到这个变量,估计不会分配空间吧!!

助工
2013-05-16 22:26:07     打赏
10楼
如果程序里用到了 就会赋值  如果没用到 这个变量就没有存在的意义了

共11条 1/2 1 2 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]