C语言总结(6)
1.表达式:
算数表达式:
单目:+, -, ++, --。
双目:+,-,*,/,%。
赋值表达式:
简单赋值:=
复合赋值:+=,-=,*=,,/=%=,!=。
关系表达式:
>,>=,<,<=,!=。
逻辑表达式:
!,&&,||
条件表达式:?
逗号表达式:,
其他运算:sizeof
2.++运算符
自增,自减运算符使变量的值增1或减1。
有四种形式:i++ ++i i-- --i
I++(i--)和++i(--i)的区别:
执行完自增(减)运算后i的值都加(减)1
但表达式的值不同:i++(i--)的值为原值。
++i(--i)的值为增(减)1后的值。
注意:
自增运算符(++),自减运算符(--)只能用于变量,而不能用于常量或表达式。
++和--的结合方向是“自右至左”。
3.条件表达式
exp1? exp2:exp3
例:
[if(x>0)
y=x+2; ===== [y=(x>0)?x+2:x*x]
else
y=x*x;]
4.逗号表达式
表达式1,表达式2,表达式3.。。。。。。表达式N
先计算表达式1,然后计算表达式2.。。。。并将表达式n的值作为逗号表达式的值。
Int a,b,c;
(a=2),(b=3),(c=a+b);
逗号运算符的优先权最低,左结合。
5.其他运算
长度运算符:sizeof
单目运算符,计算变量或数据类型的字节长度
Int a;
Sizeof(a)
求整形变量a的长度,值为4(bytes)
Sizeof(int)
求整形的长度,值为4(bytes)
6.一组数组的定义和引用
一维数组的定义
1.定义方式:
类型名 数组名[整形常量表达式];
Int a[10];
2.说明:
A,数组名的命名规则和变量名相同,遵循标识符命名规则。
B,数组名后的常量表达式用[ ]括起来。
C,常量表达式表示元素的个数,即数组长度。
例:a[ 10]表示数组a中包括10个元素,分别为a[0]-a[9]
3.数组必须先定义然后使用。C语言规定只能逐个引用,而不能一次引用整个数组。
4,对数组元素的初始化可以用以下方式实现:
A,在定义数组时,对数组元素赋以初值。如:int a[10]={0,1,2,3,4,5,6,7,8,9};
B,可以给一部分元素赋值。如:int a[10]={0,1,2,3,4},表示只给前五个元素赋初值,后五个元素自动赋予0值。
C,对static数组不赋初值,系统会对所有元素自动赋予0值。即:如果想要使数组a中全部元素值为0,可以这样定义数组:static int a[5];
C语言总结(6)的更多相关文章
- C语言 · 高精度加法
问题描述 输入两个整数a和b,输出这两个整数的和.a和b都不超过100位. 算法描述 由于a和b都比较大,所以不能直接使用语言中的标准数据类型来存储.对于这种问题,一般使用数组来处理. 定义一个数组A ...
- Windows server 2012 添加中文语言包(英文转为中文)(离线)
Windows server 2012 添加中文语言包(英文转为中文)(离线) 相关资料: 公司环境:亚马孙aws虚拟机 英文版Windows2012 中文SQL Server2012安装包,需要安装 ...
- iOS开发系列--Swift语言
概述 Swift是苹果2014年推出的全新的编程语言,它继承了C语言.ObjC的特性,且克服了C语言的兼容性问题.Swift发展过程中不仅保留了ObjC很多语法特性,它也借鉴了多种现代化语言的特点,在 ...
- C语言 · Anagrams问题
问题描述 Anagrams指的是具有如下特性的两个单词:在这两个单词当中,每一个英文字母(不区分大小写)所出现的次数都是相同的.例如,"Unclear"和"Nuclear ...
- C语言 · 字符转对比
问题描述 给定两个仅由大写字母或小写字母组成的字符串(长度介于1到10之间),它们之间的关系是以下4中情况之一: 1:两个字符串长度不等.比如 Beijing 和 Hebei 2:两个字符串不仅长度相 ...
- JAVA语言中的修饰符
JAVA语言中的修饰符 -----------------------------------------------01--------------------------------------- ...
- Atitit 项目语言的选择 java c#.net php??
Atitit 项目语言的选择 java c#.net php?? 1.1. 编程语言与技术,应该使用开放式的目前流行的语言趋势1 1.2. 从个人职业生涯考虑,java优先1 1.3. 从项目实际来 ...
- 【开源】简单4步搞定QQ登录,无需什么代码功底【无语言界限】
说17号发超简单的教程就17号,qq核审通过后就封装了这个,现在放出来~~ 这个是我封装的一个开源项目:https://github.com/dunitian/LoTQQLogin ————————— ...
- InstallShield 脚本语言学习笔记
InstallShield脚本语言是类似C语言,利用InstallShield的向导或模板都可以生成基本的脚本程序框架,可以在此基础上按自己的意愿进行修改和添加. 一.基本语法规则 ...
- 用C语言封装OC对象(耐心阅读,非常重要)
用C语言封装OC对象(耐心阅读,非常重要) 本文的主要内容来自这里 前言 做iOS开发的朋友,对OC肯定非常了解,那么大家有没有想过OC中NSInteger,NSObject,NSString这些对象 ...
随机推荐
- Android中Spanner获取选中内容和选中位置,根据位置选择对象
作为一名菜鸟,关于spanner获取选中的内容文字代码,网上后很多 但是根据给出的位置来自动选择对象,这个代码一直没找到 后来找人问了问,才知道就一句话的事,特意在这里记录下 array.xml X ...
- Mathout 安装部署
安装Mahout,并运行测试样例,抓图测试实验过程 证明已部署成功 Mahout 下载地址:http://apache.dataguru.cn/mahout/0.9/mahout-distributi ...
- HDU 1695 GCD (莫比乌斯反演)
GCD Time Limit: 6000/3000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submiss ...
- ant+jenkins+testng+selenium集成环境搭建
一.前序工作 下载ant:http://ant.apache.org/bindownload.cgi 下载jenkins:http://jenkins-ci.org/ 下载testng:http:// ...
- 渐进记号 Asymptotic Notations-------geeksforgeeks 翻译
我们已经简单的讨论了下渐进分析以及最坏,平均和最佳情况的分析.渐进分析的主要思想是分析算法的效率,不用依靠计算机的具体快慢,不需要实现这个算法,也不需要真正去计算时间.渐进记号是一种数学的工具来表示渐 ...
- 两道相似KMP题
1.POJ 3450 Coporate Identity 这两题的解法都是枚举子串,然后匹配,像这种题目以后可以不用KMP来做,直接字符串自带的strstr函数搞定,如果字符串未出现,该函数返回NUL ...
- RabbitMQ 一二事(3) - 订阅模式(微信公众号模式)的应用
之前讲的消费者互相可以把队列中的消息全部读取,但是不是读完整的所有信息 那么采用订阅模式就行,这就是微信公众号的模式, 比如10个人订阅了我的公众号"BeJavaGod",当我发送 ...
- Java虚拟机详解01----初识JVM
主要内容如下: JVM的概念 JVM发展历史 JVM种类 Java语言规范 JVM规范 一.JVM的概念: JVM: Java Virtual Machine,意为Java虚拟机. 虚拟机: 指通过软 ...
- Unity 物理引擎动力学关节
Unity物理引擎中的各个动力学关节 Hinge Joint (铰链关节) Fixed Joint (固定关节) Spring Joint (弹簧关节) Character Joint(角色关节) C ...
- [转] 值得推荐的C/C++框架和库
http://www.cppblog.com/merlinfang/archive/2014/12/26/209311.aspx