我正在网上观看教程,并没有理解为什么我们需要使用它:
printf("The value is 7: [ %d]\n",k++);
所以,这就是我所拥有的:
int k = 6;
k++;
printf("The value is 7: [ %d]\n",k);
输出:
The value is 7: [ 7]
现在这就是他所做的:
int k = 6;
k++;
printf("The value is 7: [ %d]\n",k++);
输出:
The value is 7: [ 7]
这个也将打印7:
int k = 6;
printf("The value is 7: [ %d]\n",k++);
printf("The value [%d]\n", k);
输出:
The value is 7: [ 6]
The value [7]
我的困惑是printf()
增量的重要性是什么?
答案 0 :(得分:4)
我的困惑是在printf中增加的重要性是什么?
没有重要性。
这些示例始终只是为了向您这样的人展示pre-(++k
)和后递增(k++
)操作的工作原理。关于在printf()
内增加变量没有严格的规则。
你不需要这样做,但这是非常有价值的操作,值得了解。
++k
被称为预增量:k
的值将首先递增,然后使用。
k++
称为后增量:首先使用k
的值,然后再增加1.
答案 1 :(得分:1)
规则:
1.当你使用
k++
时,它会增加k。2.当你使用例如int b = k ++; b为6,k为7
- 当你使用int b = ++ k时; b和k将是7。
醇>
所以在这里
int k = 6;
k++;
printf("The value is 7: [ %d]\n",k);
return 0;
}
所以作为第一条规则k ++ ---> k为7,printf为7。
secod代码:
int k = 6;
k++;
printf("The value is 7: [ %d]\n",k++);
return 0;
}
第一条规则:k将是7。
它就像第二个规则:k的值传递给printf然后k将递增,如果你在{print >>之后放printf("The value is 7: [ %d]\n",k);
它将打印8。
在第三个代码中:
int k = 6;
printf("The value is 7: [ %d]\n",k++);
printf("The value [%d]\n", k);
这里首先printf将打印6,因为k将在递增之前传递给它,然后是6然后k将递增,第二个printf将打印7。
答案 2 :(得分:0)
表达式SurfaceHolder
的计算结果为k++
。作为副作用,k
的值会增加。
使用时:
k
int k = 6;
k++;
printf("The value is 7: [ %d]\n",k);
将打印printf
。 7
之后的k
值仍为7。
使用时:
printf
int k = 6;
printf("The value is 7: [ %d]\n",k++);
将打印printf
。 6
之后k
的值为7。