【小知识】

目录

其他的运算符

函数

数组


其他的运算符

字符计算:一个字符加一个数字得到ASCII码表中那个数之后的字符;两个字符的减,得到它们在表中的距离。

字母在ASCII表中是顺序排列,大写字母和小写字母是分开排列的,‘a’-‘A’可以得到两段距离,所以a+‘a’-‘A’可以把一个大写字母变成小写字母,而a+‘A’-‘a’可以把一个小写字母变成大写字母。

bool语句:#include<stdbool.h>之后就可以使用bool和ture、false。

逻辑运算是对逻辑量进行的运算,结果只有0或1;逻辑量是关系运算或逻辑运算的结果。

优先级:!>&&>||

判断字符是否是大写字母:c>=‘A’&&c<=‘Z’

短路:逻辑运算是自左向右进行的,如果左边的结果已经能够决定结果了,就不会做右边的计算。对于&&,左边是false时就不做右边了,对于||,左边是true时就不做右边了。所以不要把赋值,包括复合赋值组合进表达式。

条件运算符:条件、条件满足时的值和条件不满足时的值。条件运算符的优先级高于赋值运算符,但是低于其他运算符。最好不用嵌套的条件表达式。

逗号运算符:逗号用来连接两个表达式,并以其右边的表达式的值作为它的结果。逗号的优先级是所有运算符中最低的,所以它两边的表达式会先计算;逗号的组合关系是自左向右,所以左边的表达式会先计算,而右边的表达式的值就会留下来作为逗号运算的结果。大多用在for循环的条件中。

函数

从函数中返回值:return停止函数的执行,并返回一个值。 return;  return表达式;一个函数里可以出现多个return语句。如果函数有返回值必须使用带值的return。

没有返回值的函数:void函数名(参数表),不能使用带值的return,可以没有return,调用的时候不能做返回值的赋值。

函数是一块代码,接受零个或多个参数,做一件事情,并返回零个或一个值。

调用函数:函数名(参数值);()起到了表示函数调用的重要作用,即使没有参数也需要();如果有参数,则需要给出正确的数量和顺序,这些值会被按照顺序依次用来初始函数中的参数。如果函数有参数,调用函数时必须传递给它数量、类型正确的值;可以传递给函数的值是表达式的结果,这包括:字面量、变量、函数的返回值、计算的结果。C语言在调用函数时,永远只能传值给函数。调用函数时的圆括号里的逗号是标点符号,不是运算符。

函数头,以“;”结尾,就构成了函数的原型,函数的原型的目的是告诉编译器这个函数长什么样。C语言中不允许函数嵌套定义。

传值:每个函数有自己的变量空间,参数也位于这个独立的空间中,和其他函数没有关系。定义在函数内部的变量就是本地变量,参数也是本地变量。本地变量是定义在块内;本地变量不会被默认初始化;不能在一个块里面定义同名变量。

变量的生存期和作用域;生存期:什么时候这个变量开始出现了,到什么时候它消亡了;作用域:在(代码的)什么范围内可以访问这个变量。对于本地变量,这两个问题的答案统一是:花括号内——块。

数组

定义数组:<类型>变量名称[元素数量];如int grades[100];   double weight[20];

元素数量必须是整数。

数组是一种容器(放东西的东西),特点:其中所有的元素具有相同的数据类型;一旦创建,不能改变大小;数组中的元素在内存中是连续依次排列的。可以放在赋值的左边或右边,放在左边叫左值,放在右边叫右值。

数组的每一个单元就是数组类型的一个变量;使用数组时放在[]中的数字叫下标或索引,下标从0开始计数。

数组的集成初始化:直接用花括号给出数组的所有元素的初始值;不需要给出数组的大小,编译器替你数数。如int a[] = {2,4,6,7,1,3,5,9,11},如果用[n]在初始化数据中给定位置,没有定位的数据接在前面的位置后面,其他位置的值补零,特别适合初始数据稀疏的数组。

数组的大小:sizeof给出整个数组所占据的内容大小,单位是字节。计算用sizeof(a)/sizeof(a[0])

数组的赋值:数组变量本身不能被赋值,要把一个数组的所以元素交给另一个数组,必须采用遍历。

遍历数组:通常都是使用for循环,让循环变量i从0到<数组的长度,这样循环体内最大的i正好是数组最大的有效下标;常见错误:循环结束条件是<=数组长度或离开循环后,继续使用i的值来做数组元素的下标。

数组作为函数参数时,往往必须再用另一个参数来传入数组的大小,因为不能在[]中给出数组的大小、不能再利用sizeof来计算数组的元素个数。

二维数组:int a[3][5] 通常理解为a是一个3行5列的矩阵。

二维数组的初始化:列数是必须给出的,行数可以由编译器来数;每行一个{},逗号分隔;最后的逗号可以存在,有古老传统;如果省略,表示补零。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值