我这里有一个函数可以使程序计数、等待等最少计数为 1 毫秒。但我想知道我是否可以这样做会降低精度。我已经阅读了其他答案,但它们主要是关于更改为 linux或sleep 是猜测的,更重要的是这些答案已经有十年左右的历史了,所以也许可能会有新的功能来做到这一点。
这是功能-
void sleep(unsigned int mseconds)
{
clock_t goal = mseconds + clock();
while (goal > clock());
}
实际上,我试图制作一个类似于secure_compare的函数,但我认为仅仅比较两个字符串就浪费 1 毫秒(当前最少计数)是不明智的做法。
这是我为相同的功能 -
bool secure_compare(string a,string b){
clock_t limit=wait + clock(); //limit of time program can take to compare
bool x = (a==b);
if(clock()>limit){ //if time taken to compare is more increase wait so it takes this new max time for other comparisons too
wait = clock()-limit;
cout<<"Error";
secure_compare(a,b);
}
while(clock()<limit); //finishing time left to make it constant time function
return x;
}