| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1096 人关注过本帖
标题:大家好!我是”本宝宝有毒“
只看楼主 加入收藏
苯宝宝有毒
Rank: 2
等 级:论坛游民
帖 子:15
专家分:20
注 册:2016-5-7
结帖率:66.67%
收藏
已结贴  问题点数:20 回复次数:6 
大家好!我是”本宝宝有毒“
过程能搞懂,但还是想知道道理。求讲解。
程序代码:
#include <stdio.h>
int main()
{
    int i=1,j=1,k=0;
    k=(i+++j);
    printf("%d\n%d\n%d\n",i,j,k);
    return 0;
}
搜索更多相关主题的帖子: 宝宝 
2016-07-11 15:17
平常心q
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:7
帖 子:120
专家分:550
注 册:2016-3-31
收藏
得分:4 
C语言在词法分析上有一个很简单的规则,即每一个符号应该包括尽可能都的字符,这被称为“大嘴原则”。

比如:a+++++b会被分解成((a++)++)+b,但a++不能作为左值,因此a+++++b是非法的。

希望可以帮到你!
2016-07-11 15:53
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10539
专家分:42927
注 册:2014-5-20
收藏
得分:4 
k=(i++ + j);
这样写不好吗?
2016-07-11 16:17
弟大勿勃
Rank: 2
等 级:论坛游民
帖 子:186
专家分:59
注 册:2014-4-17
收藏
得分:4 
回复 3楼 吹水佬
k=i+(++j);不可以吗?
2016-07-11 16:45
linlulu001
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:20
帖 子:944
专家分:4047
注 册:2016-4-13
收藏
得分:4 
回复 4楼 弟大勿勃
i+++j自左向右运算,你说可以吗。
2016-07-11 16:56
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10539
专家分:42927
注 册:2014-5-20
收藏
得分:0 
以下是引用弟大勿勃在2016-7-11 16:45:26的发言:

k=i+(++j);不可以吗?

不是可不可以的问题,编译和执行结果自然明。
好的程序语句要尽量使人容易读懂,不只是给自己看。
2016-07-11 19:00
wanglianyi1
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:14
帖 子:647
专家分:2067
注 册:2015-6-18
收藏
得分:4 
这种++,--的组合运算,说实话如果你自己清楚需要运算的顺序请自觉加上(),不管程序自己默认运算顺序是不是和你的想法一致,都希望能主动加上括号,人为的清楚的控制运算顺序,否则我个人觉得这种写法没有一点好处,自己读的费劲别人看的也费劲
2016-07-12 08:56
快速回复:大家好!我是”本宝宝有毒“
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019983 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved