一个简单的问题,谁答我?

aa3000 2005-11-03 10:07:03
int a=2;
if(1==a) 和 if(a==1) 哪个好?为什么?
...全文
179 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
aa3000 2005-11-04
  • 打赏
  • 举报
回复
散分喽
索思索想 2005-11-03
  • 打赏
  • 举报
回复
楼上把我要说的话都说了,纯顶吧。

个人倾向于a==1的书写习惯,因为看起来比较舒服
runall 2005-11-03
  • 打赏
  • 举报
回复
if(1==a)是为了避免你少打一个等号,因为你少打一个等号是编译不过去的
if(a==1)比较符合阅读习惯,但是如果你少打一个等号编译仍然可以通过,但是语义就变了
kobefly 2005-11-03
  • 打赏
  • 举报
回复
纯属个人习惯问题

前者可能是为了避免出错的一种方式吧
xiaoxiaozhao 2005-11-03
  • 打赏
  • 举报
回复
if(a==1) 应该会好一些。int a;本身是一个左值,而1一般情况是被认为是右值,按照习惯,应该是a==1会好一些
n6002 2005-11-03
  • 打赏
  • 举报
回复
if(1==a)
=容易被看成==
1=a就会被发现
a=1不会
nol 2005-11-03
  • 打赏
  • 举报
回复
if(1==a)好一些,这样避免写成if(a=1),写成a=1编译器并不会提示出错,可能造成错误不易被发觉
lyclowlevel 2005-11-03
  • 打赏
  • 举报
回复
受教了。
sp_007 2005-11-03
  • 打赏
  • 举报
回复
现在的编程要求规范化,所以我建议大家用if(a==1)
6030583 2005-11-03
  • 打赏
  • 举报
回复
以为是一道程序题啦!可惜可惜

纯进来支持一下吧!
个人习惯 1 == a 为了防止出错,因为以前写程序好几次少打一个=,让自己找半天,太痛苦了,后来改过来 。呵呵!
aa3000 2005-11-03
  • 打赏
  • 举报
回复
这是一道笔试题,还以为有什么编译上的优化区别呢!惭愧惭愧
happydivid 2005-11-03
  • 打赏
  • 举报
回复
这是习惯问题吧!
如果楼主还没有养成自己的编码的习惯的话,建议用if(1==a) ,可以省去很多麻烦
majianan 2005-11-03
  • 打赏
  • 举报
回复
我自己一般是在碰到指针的时候才用if(NULL==p)

64,691

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧