我通常用 C++ 编程并知道 Sleep 函数是如何工作的,但是学习 dart (用于 flutter)现在我遇到了这个延迟函数
void countSeconds(s) {
for( var i = 1 ; i <= s; i++ ) {
Future.delayed(Duration(seconds: i), () => print(i));
}
}
Run Code Online (Sandbox Code Playgroud)
它在第 i 秒后打印值i,但不应该在 1 秒后打印 1,再过 2 秒后打印 2 (即 3 ),再过 3 秒后打印 3 (即 6 秒)等。它是如何工作的?
我正在尝试 Caesar Cipher 问题,并陷入了一个非常像寻找 bug 的初学者,但我不知道为什么我的代码会这样。我向字符中添加了一个整数,并希望它的值增加,但我得到的是一个负数。这是我的代码。虽然我找到了解决方法,但是为什么这段代码会这样呢?
#include <iostream>
using std::cout; using std::endl;
int main()
{
char ch ='w';
int temp;
temp = int(ch) + 9;
ch = temp;
cout<<temp<<endl;
cout<<(int)ch;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
输出:
128
-128
Run Code Online (Sandbox Code Playgroud)