Dav*_*vid -1 c# operators unity-game-engine
我知道这是一个非常基本的问题(我对 C# 比较陌生),但不知何故我在互联网上找不到任何有关它的信息。
我只是想了解“%”运算符的作用,我以前见过应用程序并且有一些想法,但不能 100% 确定它到底做什么。
例如,下面是每 10 帧执行一次的方法(在 Unity 中):
void Update() {
frames++;
if (frames % 10 == 0) {
// method
}
}
Run Code Online (Sandbox Code Playgroud)
下面是显示的游戏时间计算:
// time = incremented by 1 every second
int seconds = (time % 60);
int minutes = (time / 60) % 60;
int hours = (time / 3600) % 24;
// int days = (time / 86400) % 365;
Run Code Online (Sandbox Code Playgroud)
在这些示例中 % 运算符到底做了什么以及我怎样才能最好地理解它。
小智 5
% 运算符返回除法的余数。
在第一个示例中,代码将每 10 帧执行一次,因为只有每第 10 帧,帧数除以 10 的余数才会为 0。
在第二个示例中,时间是总秒数,因此如果执行time % 60,您将获得最后一分钟的秒数,因为分钟有 60 秒,所以时间的余数 / 60是最后一分钟的秒数。
基本上与向下取整的情况num1 % num2相同。num1 - (floor(num1 / num2) * num2)
| 归档时间: |
|
| 查看次数: |
2576 次 |
| 最近记录: |