在调试时
int count = 128;
_scrollView.contentSize = CGSizeMake(0, 20+44*(_count/8+1+_count%8?1:0));
生成的scrollview老是不能滑动,后来打log发现,contentsize的高度一直时64
,修改为
_scrollView.contentSize = CGSizeMake(0, 20+44*(_count/8+1+(_count%8?1:0)));之后正常,之前没有留意过条件运算符?的优先级问题。
OC运算符有以下几种
1.算术运算符(+ - * / % ++ --)
2.赋值运算符(= += -= *= /= %= &= ^= |= <<= >>=)
3.比较运算符(> < == != >= <=)
4.逻辑运算符(&& || ! ^)
5.位运算符(& | ~ ^ << >>)
6.类型相关运算符
运算符优先级如下
优先级
|
运算符
|
名称或含义
|
1
|
[ ]
|
数组下标
|
( )
|
括号
| |
.
|
成员选择(对象)
| |
->
|
成员选择(指针)
| |
2
|
-
|
负号运算符
|
(类型)
|
强制类型转换
| |
++
|
自增运算符
| |
--
|
自减运算符
| |
*
|
取值运算符
| |
&
|
取地址运算符
| |
!
|
逻辑非运算符
| |
~
|
按位取反运算符
| |
sizeof
|
长度运算符
| |
3
|
/
|
除法
|
*
|
乘法
| |
%
|
余数(取模)
| |
4
|
+
|
加法
|
-
|
减法
| |
5
|
<<
|
左移
|
>>
|
右移
| |
6
|
>
|
大于
|
>=
|
大于等于
| |
<
|
小于
| |
<=
|
小于等于
| |
7
|
==
|
等于
|
!=
|
不等于
| |
8
|
&
|
按位与
|
9
|
^
|
按位异或
|
10
|
|
|
按位或
|
11
|
&&
|
逻辑与
|
12
|
||
|
逻辑或
|
13
|
? :
|
条件运算符
|
14
|
=
|
赋值运算符
|
/=
|
除后赋值
| |
*=
|
乘后赋值
| |
%=
|
取余后赋值
| |
+=
|
加后赋值
| |
-=
|
减后赋值
| |
<<=
|
左移后赋值
| |
>>=
|
右移后赋值
| |
&=
|
按位与后赋值
| |
^=
|
按位异或后赋值
| |
15
|
,
|
逗号运算符
|