c语言中i--,--i和-i--有什么区别

kuaidi.ping-jia.net  作者:佚名   更新日期:2024-07-31

--i 是先执行i=i-1,然后再使用i的值, 这时的i 值就是表达式--i的值。i-- 是先使用i的值作为表达式i--的值,然后,执行i=i-1操作。

#include"stdio.h"
void main()
{
int i=4,j,k;
j=i--;    //i先赋值给j,然后i在执行i=i-1;
k=--i;    //i先执行i=i-1,然后再赋值给;
printf("i=%d,j=%d,k=%d",i,j,k);
}

运行结果为: i=2,j=4,k=2

扩展资料

C语言的模块化程序结构用函数来实现,即将复杂的C程序分为若干模块,每个模块都编写成一个C函数,然后通过主函数调用函数及函数调用函数来实现一大型问题的C程序编写,因此常说:C程序=主函数+子函数。

因此,对函数的定义、调用、值的返回等中要尤其注重理解和应用,并通过上机调试加以巩固。

参考资料:c语言_百度百科



意思一样,只不过你的程序有点问题,第二个程序中
if
(s1[i]
=
'\0')
{
strcat(ch,
&s2[i]);
}
应该为
if
(s1[i]
=
=
'\0')
{
strcat(ch,
&s2[i]);
}

  • ++i、--i和i++、i--的区别理解
    答:先执行减法 打印出来是8 printf("%d\n",i++)。先执行程序 打印出来是8 打印结束后i为99printf("%d\n",i--)。3、执行程序结果先后不同。打印出来是9 打印结束后i为8 printf("%d\n",-i++),先执行程序 打印出来是-8 打印结束后i为9 printf("%d\n",-i--)。先执行程序 打印出来是-...
  • c语言中i--是啥意思
    答:i--是后置操作 --i是前置操作 例 int a = 0;int i = 0;a = i--;//先a = i ; 然后 i = i - 1;所以a == 0;/// int a = 0;int i = 0;a = --i;//先i = i - 1 ; 然后 a = i;所以a == -1;
  • C语言中++i,i++,--i,i--如何使用什么意思?
    答:++i,先自增后运算,i++,先运算后自增,--i,先自减后运算,i--先运算后自减
  • 在C语言中-i和i-的区别
    答:比如:a=--i;相当于i--; a=i;a=i--;相当于a=i; i--;
  • C语言中i++,++i,i--。--i是怎么运算的,有区别吗
    答:因为先进行自加 i++ , i 变为 2 ,然后 i 再加上等于 1 的 k ,赋给 k 得 3 ,相当于先i=i+1;再k=k+i; i=1; k=1; k=k+i++ ; k 就等于 2 ,因为先进行 k+i , k变为 2 ,然后 i 再自加等于 2 ,相当于先k=k+i;然后i=i+1;就是先使用后自增。 --也是 ...
  • C语言中i---i运算问题
    答:i---i i - (--i) = 1 或者 (i--) - i = 0 最好用括号写上顺序 要不写 程序自身就会乱加了 跟这个叫真没什么意义 那你说VC里边 printf函数经常出现问题 他本身就存在BUG 牛角尖钻多了没意义 适当可以加深深度
  • c语言,for(i=5;i--;)和for(i=5;--i;)的区别,再解释一下这个循环的意思和...
    答:总的来说,前一个比后一个多运行一次循环体,原因就是i--和--i的返回值问题,当循环到i是1的时候,第一个还会循环一次,因为i--是1,后面再利用i的时候才是0 但是第二个,--i,直接返回0,所以不会再运行循环体了 for的运算顺序是 for(表达式1;表达式1;表达式3){ 循环体 } 先运行...
  • i--是否可作为C语言的赋值语句
    答:可以,也即i=i-1,不过得注意int i=1;和i--这两句语句的差别,前一句是初始化,后一句是赋值。意义不同
  • c语言中i=3,执行语句i---i后 i的值为多少
    答:i---i==(i--)-i=3-3=0,i=3-1=2,表达式的值为0,i的值为2
  • c语言i--i的值是多少??i是int,初值是3
    答:i减去负i,6-(-6)=12 如果是i---i的话...麻烦一些,因为编译器便宜方向的不同,常常会得到不同的结果,VC是从左向右进行便宜,而TC是从右向左,就分别得到 (i--)-i和i-(--i)两个结果,万幸在本例结果都是零.我们在编码时势必摈弃这种摸棱两可的表示方法,我们的算法完全可以用更加显然...