我在我学习的游戏中找到了这行代码
int charaCode = arc4random() % (126-'!'+1)+'!';
Run Code Online (Sandbox Code Playgroud)
我知道arc4random是什么,但表达式对我来说很奇怪.
是什么目的
(126-'!'+1)+'!'
Run Code Online (Sandbox Code Playgroud)
它总是评估为127.
glg*_*lgl 32
您解释错误:%运算符的优先级高于+.
所以,实际上,你有:
int charaCode = (arc4random() % (126-'!'+1))+'!';
Run Code Online (Sandbox Code Playgroud)
它将功能结果剪辑到0..93并将其移动以使其开始'!'.
所以,你所得到的有效范围是33..126(这是所有可见的ASCII字符从范围!到~).
| 归档时间: |
|
| 查看次数: |
543 次 |
| 最近记录: |