当前位置:首页 > 技术知识 > 正文内容

C语言中的自增运算符和自减运算符

maynowei9个月前 (10-02)技术知识105

--i 自减运算符

功能:i自减1后再参与运算

#include <stdio.h>
int main()
{
    int i = 1;
    printf("%d\n",i--);
    return 0;
} 

结果: i 先自减1 后再参与运算所以i的值是0



i-- i参与运算后i的值自减1

#include <stdio.h>
int main()
{
    int i = 1;
    printf("%d\n",i--);
    printf("%d\n",i);
}

结果:因为i 参与运算后i的值自减1,所以输出的结果是1,0



++i :自增运算符

功能:i 自增1后再参与运算

#include <stdio.h>
int main()
{
    int i = 0;
    printf("%d\n",i);
    return 0;
}

结果:i 先自增1 后i变为1 再将1输出



i++ :i参与运算后i的值自增1

#include <stdio.h>
int main()
{
    int i = 0;
    printf("%d\n",i++);
    printf("%d\n",i);
    return 0;
}

结果:因为i先参与运算后值自增1,所以输出的值是0,1;


-i++ i先与负号结合再自增

#include <stdio.h>
int main()
{
    int i = 1;
    printf("%d\n",-i++);‘
  printf("%d\n",i);
  return 0;
}

结果:i先与负号结合得到-1然后再自增1(输出-1),在第二个输出语句中输出2



-i--: i先与负号结合再自减

#include <stdio.h>
int main()
{
    int i = 1;
    printf("%d\n",-i--);‘
  printf("%d\n",i);
  return 0;
}

结果:i先与负号结合得到-1然后再自减1(输出-1),在第二个输出语句中输出0


-(++i): i先自增再与负号结合

#include <stdio.h>
int main()
{
    int i = 1;
    printf("%d\n",-(++i));
  printf("%d\n",i);
  return 0;
}

结果:i先自增1得到2然后再与负号结合(输出-2),在第二个输出语句中输出2

相关文章

苹果编程Objective C与Swift谁更牛?

小鹏大学刚刚毕业,软件开发方面的东西学的不是很多,听好多同学说做iOS开发工资上万是很容易的,踌躇满志,一直想自学iOS开发,可突如其来的一件事让他瞬间迷茫了。时间:2014年9月10日10点地点:某...

机器人需求驱动导航新SOTA,成功率提升15%!浙大&amp;vivo联手打造

CogDDN团队 投稿量子位|公众号QbitAI让机器人像人一样边看边理解,来自浙江大学和vivo人工智能实验室的研究团队带来了新进展。正如视频所展示的,机器人在复杂的室内环境中不仅能自主探索,还具备...

Shopee新手指南:Shopee卖家中心用户界面介绍

1.Shopee各站点前台网页链接:2.Shopee各站点后台网页链接3.Shopee APP下载:安卓版下载链接:https://pan.baidu.com/s/1eSp8M1k#list/path...

如何在Go中同步线程(go语言同步锁)

单线程代码已经带来头痛。添加第二个线程,就是从基础头痛升级了。解决方案?互斥锁:线程和数据的交通警察。一旦你理解了它们,线程同步就变成了第二本能,语言无关。在C++和Go中工作,我遇到过所有常见的混乱...

不需安装oracleclient连接oracle数据库方案

在Oracle官方发布ODP.net之前,我们通常使用微软的System.data.OracleClient进行Oracle数据库操作,它的缺点是必须要装Oracle客户端OracleClient,如...

PL/SQL Developer连接Oracle数据库详解

序言:oracle数据库比较难搞,好不容易安装上了,但是怎么连接呢,直接在服务器里用自带的命令行操作太繁琐,所以PL/SQL Developer客户端的好处就显而易见了,今天和大家聊聊客户端具体配置方...