我对C语言中.含有自增和自减的算术表达式不怎么太理解. 谁能帮我解释解释下.最好通过几个事例讲解下.多谢

网上有关“我对C语言中.含有自增和自减的算术表达式不怎么太理解. 谁能帮我解释解释下.最好通过几个事例讲解下.多谢”话题很是火热,小编也是针对我对C语言中.含有自增和自减的算术表达式不怎么太理解. 谁能帮我解释解释下.最好通过几个事例讲解下.多谢寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。

你是在用turbo C2.0系统吗?

前缀++和后缀++运算是有基本运算规则:

前缀++是:先算后取,即先对运算对象进行加1运算,再取运算对象的当前值作为表达式计算结果,所以 y=++i; 在i的初值为3时,表达式运算后y的内容为4,i的内容为4。

后缀++是:先取后算,即先取运算对象的当前值作为表达式计算结果,然后对运算对象进行加1运算,所以 y=i++; 在i的初值为3时,表达式运算后y的内容为3,i的内容为4。

当在一个表达式中存在多个单目运算,特别是对同一个变量的单目运算时,初学时可能会觉得结果怪异,但实际上在Turbo C系统中的运算也是非常有规律的,即前缀单目运算的优先级高于后缀单目运算,所以整个表达式的运算过程是:

1、进行所有的前缀单目运算

2、取所有单目运算对象的当前值作为表达式的计算结果

3、进行所有的后缀单目运算

你所说的两个题目的运算过程是:

1、j=(i++)+(i++)

全部后缀运算,先取后算,取单目运算对象的当前值做表达式的计算结果

3 3

进行加1运算

i=4; i=5;

所以计算结果 j=6; i=5

2、j=(i++)+(++i);

先进行前缀运算

i=4

取所有单目运算对象的当前值作为表达式的计算结果

4 4

进行后缀运算

i=5

所以计算结果是 j的计算结果是4+4=8 i的内容为5

a*=a++*++a 分解如下:

a*=++a*++a;

a=a*((a+1)*(a+1)) 把a的具体值代进去算就可以了。 因为开始等号右边的*号为最后的计算 所以CPU看到 a有两个数据 会把后一个数据赋给前一个a++数据(也就是后缀编程了前缀) 然后再进行 *号 计算。。

关于“我对C语言中.含有自增和自减的算术表达式不怎么太理解. 谁能帮我解释解释下.最好通过几个事例讲解下.多谢”这个话题的介绍,今天小编就给大家分享完了,如果对你有所帮助请保持对本站的关注!

(40)

猜你喜欢

发表回复

本站作者才能评论

评论列表(3条)

  • 悦琳悦的头像
    悦琳悦 2025年10月23日

    我是道康号的签约作者“悦琳悦”

  • 悦琳悦
    悦琳悦 2025年10月23日

    本文概览:网上有关“我对C语言中.含有自增和自减的算术表达式不怎么太理解. 谁能帮我解释解释下.最好通过几个事例讲解下.多谢”话题很是火热,小编也是针对我对C语言中.含有自增和自减的算术...

  • 悦琳悦
    用户102302 2025年10月23日

    文章不错《我对C语言中.含有自增和自减的算术表达式不怎么太理解. 谁能帮我解释解释下.最好通过几个事例讲解下.多谢》内容很有帮助

联系我们:

邮件:道康号@gmail.com

工作时间:周一至周五,9:30-17:30,节假日休息

关注微信