weixin_39556397
weixin_39556397
采纳率50%
2017-07-26 07:39

printf("%d,%d\n",k,++k)与 printf("%d,%d\n",k,k++)

已采纳

int k=8;printf("%d,%d\n",k,++k)与 printf("%d,%d\n",k,k++)为什么一个输出的是9,9 另一个是8,8

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

4条回答

  • withnoword withnoword 4年前

    第一个

    int k=8;
    printf("%d,%d\n",k,++k);
    //-------------
    int k=8;
    k = k+1;
    printf("%d,%d\n",k,k);
    
    

    第二个

    int k=8;
    printf("%d,%d\n",k,k++);
    //-------------
    int k=8;
    printf("%d,%d\n",k,k);
    k = k+1;
    
    
    点赞 评论 复制链接分享
  • what951006 小乌龟在大乌龟背上 4年前

    这个是日经了,日日讲,月月讲,++i与i++区别

     operator++()前缀++ ,即俗气的i++,返回i+1
    operator++(int)后缀++,同样俗气的++i,i+=1并返回旧值
    
    点赞 评论 复制链接分享
  • rong05151005 xiao哈哈哈 4年前

    看看++前置和后置的区别就明白了

    点赞 评论 复制链接分享
  • tangreng0615 云彩袋鼠兰 4年前

    k++与++k的区别:
    遵循就近原则
    m1=k++即为m1=k,k=k+1;
    m2=++k即为k=k+1,m2=k,
    当k=8时,m1=8,m2=9

    点赞 评论 复制链接分享

为你推荐