int m, n, j;
n=16;
j=15;
m = n++ -j+10;
printf("%d", m);
输出:11。
这里,首先,n
的旧值被赋予 m
,然后它递增,所以我得到的新值是 17,然后表达式被求解,即j+10
= 25 然后 n 的新值减去 25 即 17-25。
我对吗 ?但答案与输出 11
不匹配。
那么这是如何工作的呢?
而且,我是编程新手,开始学习 C。你会推荐哪本书最适合我?因为我没有编程经验。
谢谢。
最佳答案
m = n++ -j+10;
等同于
m = n -j+10;
n = n + 1; // m is 11.
如果是++n
就是
n = n + 1;
m = n -j+10; //m is 12.
then the expression is solved i.e. j+10 = 25
没有。它将是 -j+10
= -5
我的建议是,不要写复杂的表达式,除非你完全确定你在写什么。
关于有人可以告诉我这是如何工作的吗? (C 编程),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9002755/