不在同一条语句中多次使用自增运算符

今天遇到一个问题,使用串口打印数组中的连个字节发现输出的都是第一个字节的内容,语句如下:
hal_Printf1(“\r\na=%d b=%d”,*(pRate++),*(pRate++));
通过在网上搜索,得到的结论是不要连续使用自增运算符,我把它总结为:不在一条语句中多次使用自增自减运算符。
具体分析请参考 Malash’s Blog 《为什么不建议在C语言中连续使用自增自减运算符
分享到: 更多
版权申明:

本站保留所有原创文章的版权,本站地址:奔跑的博客[http://www.elecbench.com]

原创文章转载时请注明出处,并添加文章所在页面的链接:http://www.elecbench.com/%e4%b8%8d%e5%9c%a8%e5%90%8c%e4%b8%80%e6%9d%a1%e8%af%ad%e5%8f%a5%e4%b8%ad%e5%a4%9a%e6%ac%a1%e4%bd%bf%e7%94%a8%e8%87%aa%e5%a2%9e%e8%bf%90%e7%ae%97%e7%ac%a6/

本站所有 2010年3月4日 以后发表、未标明为“转载”的文章均是本站原创。

发表评论?

2 条评论。

  1. 有个词叫序列点,sequence point。用于确定你所修改的变量是否产生了作用,以用于下次计算。

发表评论


(设置自己的个性头像)

*

申请属于你的免费顶级域名