c语言中的k=-k是什么意思

Python021

c语言中的k=-k是什么意思,第1张

意思就是把k这个变量的负值赋给k变量。

C语言里=这个符号是赋值符号而不是等于号,有赋值符号的式子,应该从右向左计算,并把右边的最终结果赋给左边的变量,因此k=-k的意思就是先对k这个变量取负值,然后将k的负值赋给k这个变量。

C语言里的等于号是==,除号是/,乘号是*。

while(--k)  printf("%d\n", k=1)表示当--k不等于0时,输出1。

该语句等价于:

while(--k)  // 如果--k不为0,则执行循环体语句

{

    k=1  // 对变量k进行赋值

    printf("%d\n", k)  // 输出k的值,即1

}

其中printf("%d\n", k=1)表示先将常量1赋值给变量k,之后输出变量k的值。