[应用相关] 这个用法可以不

[复制链接]
1205|24
 楼主| huwr 发表于 2018-11-6 17:46 | 显示全部楼层 |阅读模式
定义:
unsigned int data len; //用到了len
void send(unsigned int len); //也使用了了len,是否合理?

主程序{


}
llljh 发表于 2018-11-6 17:49 | 显示全部楼层
没有问题,这是C的问题,和KEIL没有关系
dingy 发表于 2018-11-6 17:52 | 显示全部楼层
void send(unsigned int len);  这里只是声明有个参数unsigned int而后面的len此处没有意义,可以省略....
pengf 发表于 2018-11-6 17:57 | 显示全部楼层
这种用法是可以的,不过最好还是区别开,因为这两个“len”表达的是两个不同的东西。
renyaq 发表于 2018-11-6 18:00 | 显示全部楼层

但是如果全局变量和局部变量弄一样的 就不太好了。虽然运行也正确。
supernan 发表于 2018-11-6 18:03 | 显示全部楼层
没有问题的呀,你一编译肯定过得去的。
xxrs 发表于 2018-11-6 18:07 | 显示全部楼层
那个是个形参,叫啥名字是给你看的,但是一直这样编下去会养成不好的习惯的。
houcs 发表于 2018-11-6 18:11 | 显示全部楼层
前面那个如果是全局变量就不好了
yinxiangh 发表于 2018-11-6 18:17 | 显示全部楼层
全局变量和局部变量这两者相互之间完全可以重名
pangb 发表于 2018-11-6 18:20 | 显示全部楼层
局变量的生命期和主程序一样
songqian17 发表于 2018-11-6 18:24 | 显示全部楼层
局部变量可以与全局变量同名。。
zyf部长 发表于 2018-11-6 18:27 | 显示全部楼层
局部变量会覆盖全局变量,在局部变量所在的块或者函数内,对变量的操作不影响全局变量的值。
xxmmi 发表于 2018-11-6 18:30 | 显示全部楼层
全局不可以相同。但是函数的形参可以。
kangzj 发表于 2018-11-6 18:34 | 显示全部楼层
同一作用域,重复申明但不赋值,不会对变量有影响。。
huanghuac 发表于 2018-11-6 18:37 | 显示全部楼层
不是同一作用域。
happy_10 发表于 2018-11-6 18:40 | 显示全部楼层
函数的形参根本就不会作为一个符号
 楼主| huwr 发表于 2018-11-6 18:46 | 显示全部楼层

嗯,那我按大家的说法挨个排查一下,先结贴啦,谢谢哈
幸福小强 发表于 2018-11-6 19:48 | 显示全部楼层
你在函数入口定义的只能在函数内有效,也就是局部变量。
幸福小强 发表于 2018-11-6 22:11 | 显示全部楼层
可以,一个是全局变量一个是局部变量,作用范围不同。
磨砂 发表于 2018-11-7 09:59 | 显示全部楼层
可以 问题是你要宏定义一下这个len
您需要登录后才可以回帖 登录 | 注册

本版积分规则

780

主题

8627

帖子

5

粉丝
快速回复 在线客服 返回列表 返回顶部