想要找到如何格式化呼叫arc4Random()以使用从-10到10的数字范围.
或者arc4Random()只生成从0到X?如果是这种情况,我将需要操纵结果,arc4Random()以便它可能是指定范围内的结果?
arc4random返回a u_int32_t,这是一个无符号类型.您需要将其转换为有符号的类型然后减去.
我假设你想要一个从-10到+10的数字(你有时想要选择-10和+10).
如果您的目标是iOS 4.3或更高版本,或Mac OS X 10.7或更高版本,则应使用以下arc4random_uniform功能:
int myNumber = (int)arc4random_uniform(21) - 10;
Run Code Online (Sandbox Code Playgroud)
如果您要定位较旧的操作系统,则必须使用arc4random:
int myNumber = (int)(arc4random() % 21) - 10;
Run Code Online (Sandbox Code Playgroud)