增加printf()中的变量

时间:2015-08-23 19:12:09

标签: c

我正在网上观看教程,并没有理解为什么我们需要使用它:

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()增量的重要性是什么?

3 个答案:

答案 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

     
      
  1. 当你使用int b = ++ k时; b和k将是7。
  2.   

所以在这里

 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); 将打印printf7之后的k值仍为7。

使用时:

printf

int k = 6; printf("The value is 7: [ %d]\n",k++); 将打印printf6之后k的值为7。