自增自减及逗号表达式

**

自增自减及逗号表达式

**

一.自增、自减运算符

1.自增运算符++和自减运算符–都是单目运算符,功能是使变量的值加1或减1。
2.自加或自减只能用于变量,而不能用于常量或表达式。
3.用于++、–运算的变量只能是整型、字符型和指针型变量

在这里插入图片描述
运行下面的程序,观察并分析运算规则

 #include<stdio.h>
int main( )
{
	int a,b,c,d;
	a=1; b=2; c=3; d=4;
	printf("a++的值为:%d \n",a++);
	printf("a的值为:%d\n",a);
	printf("++b的值为:%d \n",++b);
	printf("b的值为:%d\n",b);
	printf("c--的值为:%d\n",c--);
	printf("c的值为:%d\n",c);
	printf("--d的值为:%d\n",--d);
	printf("d的值为:%d\n",d);
}

在这里插入图片描述

解析

  1. 第一个输出为1,因为a++是先输出再自加1,所以该printf只输出第一步,第一步为赋值。
  2. 第二个输出问a的值,因为第一次已经输出过a++的值了,第一步是赋值,所以这里属于第二步,为自加1。
  3. ++b属于先自加,再赋值。之后就以此类推···

注意

表达式a++与++a的值不同,表达式a- -与- -a的值也不同。

+ +和- -的结合方向是“自右至左”,其优先级高于算术运算符。

二.逗号运算符和逗号表达式

  1. 逗号表达式的一般形式为: e1,e2,e3,…,en

注意:(1)逗号是一个多目运算符,并且优先级最低 ,而且是左结合;又称之为顺序求值运算符,第 1 个求 e1 ,其次e2,最后一个求 en 。
(2)整个表达式的值为 en 的值。
(3)与函数中参数分隔加于区别:例如

  1. printf ( “%d, %d, %d”, a, b, c );三个值从右到左运算
  2. printf ( “%d”, (a, b, c) );三个值从左到右运算

以上内容均来自与本人c学习随笔,知识面内容不全,见谅!会持续完善的!!!

热门文章

暂无图片
编程学习 ·

dexjar用法

将dex文件转换成jar文件: 直接将dex文件拖进d2j-dex2jar.bat 或者 用cmd进行转换将jar文件转换成dex文件: 直接将jar文件拖进d2j-jar2dex.bat 或者 用cmd进行转换
暂无图片
编程学习 ·

c#导入百度统计API数据

最近项目中需要增加一些新功能:当前在线人数,总访问量统计,今日访问量,上一年度访问量,找了很多第三方统计工具,最后确定用百度统计,因为项目是vue的,直接引入的时候出现了跨域,发现前端用jsonp解决不了,所以就直接用c#请求再返回给前端了,话不多说,具体操作如下(…
暂无图片
编程学习 ·

安装Ubuntu系统时遇见的问题:

安装双系统,在已有win10的基础上安装Ubuntu18.04相关设备:1)Rufus 3.112) Ubuntu18.04.4的镜像文件通过使用rufus来制作U盘启动器,因为网上有详细教程就不介绍了。由于之前有多次安装Ubuntu的经历,磁盘分区比较乱,以及因为在之后的选择安装里如果卸载之前安装的Ubuntu就不…
暂无图片
编程学习 ·

火箭少女101毕业,rocketgirls.fans粉丝站上线震撼饭圈

2年前的2018年6月23日晚:经过一百零四天的艰苦训练和比赛,由457家公司、13778名练习生中层层挑选出的11名女孩站上成团出道位,组成为期2年的限定女团,火箭少女101成团出道。两年后的2020年6月23日晚:火箭少女101的2年限定组合期限已到,晚上8点 “遇见再见”火箭少女101告…
暂无图片
编程学习 ·

老鸟带你回顾新人Java不容错过的八本好书

回头看看, 我进入Java 领域已经快15个年头了, 虽然学的也一般, 但是分享下我的心得,估计也能帮大家少走点弯路。 [入门] 我在2001年之前是C/C++阵营, 有C和面向对象的基础, 后来转到Java ,发现没有指针的Java真是好简单, 另外Java 的类库好用的让人哭啊。 后来我就看《…
暂无图片
编程学习 ·

nginx从下载到部署全过程(Linux)

导航NGINX官网下载NGINX安装环境解压,编译,安装启动及测试NGINX官网以下列举了三个网址,分别是:NGINX官网,下载网址及官方文档。官方网站:http://nginx.org/下载网址:http://nginx.org/en/download.html官方文档:http://nginx.org/en/docs/ 下载NGINX 通过官方下载地址…
暂无图片
编程学习 ·

Portworx Essentials 视频讲解

Portworx Essentials vs. Portworx Enterprise:https://www.iqiyi.com/v_19rzfuk1yw.html欢迎回到Portworx讲解视频系列,我是Ryan Warner。今天我们来介绍一下Portworx Essentials版本,以及与Portworx Enterprise版本的区别。Portworx Essentials是在K8S上运行数据管理的最必…
暂无图片
编程学习 ·

爬虫代理http协议和https协议的区别

1.HTTP和HITTPS的基本概念 HTTP:超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器端请求和应答的标准(TCP),用于从WWW服务器传输超文本到本地浏览器的传输协议,它可以使浏览器更加高效,使网络传输减少。 …
暂无图片
编程学习 ·

Matlab class文件 简单上手使用

1.简单的书写规范 一般通过软件(拓展)新建功能,可以选择新建一个脚本、函数或者是类。当然文件中以类的形式书写代码,保存后matlab将自动识别该文件为类。 当使用软件新建类后,新建的文件中包含了类文件的基础格式(我使用的软件是MATLAB R2014b): classdef Untitled3%U…
暂无图片
编程学习 ·

流量记录和回放n2disk

n2disk™是网络流量记录器应用程序。n2disk™是具有索引功能的10/40 Gbit网络流量记录器。使用n2disk™,您可以从实时网络接口以几Gigabit速率(在足够的硬件上以10 Gigabit / s以上)捕获全尺寸的网络数据包,并将其写入文件中而不会丢失任何数据包。n2disk™旨在将文件长时间…
暂无图片
编程学习 ·

2. judgeSquareSum

忘记是自然选择,重要的是抽取学习方法双指针 --判断某一非负整数是否是两数平方和(easy) leecode输入:5 输出:true 5=1^2 + 2^2 思路:等于从一个有序数组找两个数平方和为target,注意的是最大值肯定小于Math.sqrt(target)public boolean judgeSquareSum(int c) {if (c < 0)…
暂无图片
编程学习 ·

jdk源码解析二之HashMap

这里写自定义目录标题HashMapputremovereplaceget扩容resize迭代器总结什么时候采用红黑树?为什么每次扩容后,是2的幂次方?为什么扩容后,相同的在原位置保存,而不同的则当前索引+之前原位置索引保存?为啥用尾插法?为什么线程不安全? HashMap HashMap的loadFactor为什么是0…
暂无图片
编程学习 ·

Exception 的意义

Exception 的意义 文章目录Exception 的意义引言Exception 的语义自底向上的观点自顶向下的观点结论 引言 为什么程序设计语言要加入 Exception 机制?这个问题的答案或许不是那么显然。 Exception 常见于 “操作过程可能出现意外” 的场景。比如,试图打开文件时发现文件不存在…
暂无图片
编程学习 ·

2020-07-02

网页 你知道什么是网页吗?或者你知道该用什么样的话来形容它吗? 我能想到的话是: 网页是由图片、文字、声音、视频、链接这些个东东组成的扩展名叫html的文件 那啥子叫扩展名呢? 扩展名就是指文件的类型 规定文件应该用哪个软件打开 晓得不啦?那html是个啥呢? html是一种…
暂无图片
编程学习 ·

centos自用命令备份

上传 scp -p E:\abc\requirement.txt root@132.232.10.218:/root/stock 下载 scp root@103.51.15.130:/root/project/log/2020-01-07-12-22-15.log D:\ ----------------------------------------- 启动多个脚本 python3 zmq.py & python3 open.py & python3 clos.py &…
暂无图片
编程学习 ·

linux jdk1.8安装

jdk安装安装包下载 https://www.oracle.com/java/technologies/javase/javase8-archive-downloads.htmljdk-8u151-linux-x64.tar.gz解压 tar -zxf jdk-8u151-linux-x64.tar.gz[root@vm051centos data]# ls jdk1.8.0_151/ bin db javafx-src.zip lib man …
暂无图片
编程学习 ·

正则表达式知识点

目录笔记复习用的网站 笔记 * 任意次 ? 0或1次 + 1或更多 {n} 重复n次 {n,} n或更多 {n,m} n到m次 | 分支条件 ^$ 字符串开头结尾 (\n字符串\n) ^.*$ . 任意一个数字字母下划线 \s 空格回车 \d 数字 \b 该位置是空格 但不会显示空格,除非\b.\b \d+ 一串数字 …