我为自己想出了一个任务:每分钟显示一条消息。此代码显示消息,但不是一次。这不应该,消息应该只显示一次。我真的不明白这个错误。
DateTime fixDate = DateTime.Now;
int checkPoint = fixDate.Second;
bool key = false;
Console.WriteLine($"Секунды при запуске {checkPoint}");
for (; ; )
{
DateTime now = DateTime.Now;
if ((checkPoint == now.Second) && (key = true))
{
Console.WriteLine("Прошла минута");
key = false;
}
if (checkPoint != now.Second)
{
key = true;
}
}
我确定了日期,为自己节省了一秒钟的程序启动时间。我开始不断更新日期,如果秒等于检查点并且标志为真,那么我会显示一条消息。只有当第二个不等于检查点时,标志才会更新并变为真。从这里开始,如果标志只有在第二个不等于检查点时才变为真,那么如何显示消息就完全不清楚了。我尝试使用调试,但由于时间的推移,该消息永远不会显示,因为标志始终为假。如何正确改进算法,使消息每分钟只显示一次?
1 个回答