//强制转换和隐式转换的区别,结论:区别不大
#include <cstdio>
#include <iostream>
#include <ctime>
#include <cmath>
using namespace std;
int main(){
time_t s,t;
int i;
double x;
s = clock();
for(i= 0;i< 10000000;i++)x=sqrt(i)*sqrt(i* 1111);
t = clock();
double duration = difftime(t,s);
cout<<duration<<endl; // 实测速度1359ms
s = clock();
for(i= 0;i< 10000000;i++)x=sqrt( double(i))*sqrt( double(i* 1111));
t = clock();
duration = difftime(t,s);
cout<<duration<<endl; // 实测速度1375ms
return 0;
}
#include <iostream>
#include <ctime>
#include <cmath>
using namespace std;
int main(){
time_t s,t;
int i;
double x;
s = clock();
for(i= 0;i< 10000000;i++)x=sqrt(i)*sqrt(i* 1111);
t = clock();
double duration = difftime(t,s);
cout<<duration<<endl; // 实测速度1359ms
s = clock();
for(i= 0;i< 10000000;i++)x=sqrt( double(i))*sqrt( double(i* 1111));
t = clock();
duration = difftime(t,s);
cout<<duration<<endl; // 实测速度1375ms
return 0;
}