Unix command time for windows.

C++代码
  1. // time.cpp : Defines the entry point for the console application.  
  2. //  
  3.   
  4. #include </span>  </span> </li>
  5. #include </span>  </span> </li>
  6. #include </span>  </span> </li>
  7.   
  8. int gettime() {  
  9.     time_t t;  
  10.     time(&t);  
  11.     return t;  
  12. }  
  13. void printtime(int t) {  
  14.     char buf[20];  
  15.     if (t<0) sprintf(buf,"%d s",0);  
  16.     else if (t<60) sprintf(buf,"%d s",t);  
  17.     else if (t<3600) sprintf(buf,"%d m %d s",t/60, t%60);  
  18.     else sprintf(buf,"%d h %d m %d s",t/3600, (t%3600)/60, (t%3600)%60);  
  19.     puts(buf);  
  20. }  
  21.   
  22. int main(int argc, char* argv[])  
  23. {  
  24.     if(argc<2) {  
  25.         puts("Nothing to run.");  
  26.         return 0;  
  27.     }  
  28.     STARTUPINFO si={0};  
  29.     PROCESS_INFORMATION pi;  
  30.     int i,t1,t2;  
  31.     char argstr[MAX_PATH]={""};  
  32.   
  33.     si.cb=sizeof(STARTUPINFO);  
  34.     t1=gettime();  
  35.     for(i=1;argv[i];i++) {  
  36.         strcat(argstr,argv[i]);  
  37.         strcat(argstr," ");  
  38.     }  
  39.     //puts(argv[1]);  
  40.     //printf("%d\n",t1);  
  41.   
  42.     if(CreateProcess(NULL,argstr,NULL,NULL,FALSE,0,NULL,NULL,&si,π)) {  
  43.         WaitForSingleObject(pi.hProcess,INFINITE);  
  44.         t2=gettime();  
  45.         //printf("%d\n",t2);  
  46.         printtime(t2-t1);  
  47.     } else {  
  48.         printf("Unable to run app!");  
  49.     }  
  50.     return 0;  
  51. }  
  52. </ol> </div> 仿linux的time程序。