linux系统中的时间
1.编程显示系统时间:
1 #include <stdio.h> 2 #include <time.h> 3 /* 4 gcc -o fix fixedFormatTime.c 5 ./fix 6 */ 7 int main() 8 { 9 time_t time_raw_format; 10 time( &time_raw_format); // Get the current time 11 printf( "Time is [%ld].\n", (long)time_raw_format );///显示从1970年1月1日0时到现在的秒数-64位整数 12 // Convert the integer time to the fixed-format string 13 printf( "The current local time is: %s\n", ctime(&time_raw_format) );//显示字符串形式的时间,具体到秒 14 return 0; 15 }
2.linux的时间测量:
1 #include <stdio.h> 2 #include <math.h> 3 #include <sys/time.h> 4 /* 5 gcc statTime.c -o s -lm 6 gcc statTime.c -o s(.exe文件名称) -lm(加库说明) 7 ./s 8 */ 9 void testFun() 10 { 11 unsigned int i,j; 12 double y; 13 for(i=0; i<10000; i++ ) 14 { 15 for(j=0; j<10000; j++ ) 16 { 17 y = sin((double)i); //time-consuming operation 18 } 19 } 20 } 21 int main() 22 { 23 struct timeval tpstart, tpend; 24 float timeused; 25 26 gettimeofday( &tpstart, NULL ); //record the start timestamp 27 testFun(); 28 gettimeofday( &tpend, NULL ); //record the end timestamp 29 // compute the used time 30 timeused = 1000000 * ( tpend.tv_sec-tpstart.tv_sec) + (tpend.tv_usec-tpstart.tv_usec); 31 timeused /= 1000000; 32 printf( "Used Time: %f\n", timeused ); 33 return 0; 34 }
3.linux中的计时器(还不明白咋做的)
1 #include <stdio.h> 2 #include <time.h> 3 #include <signal.h> 4 #include <sys/time.h> 5 // gcc -o t testtimer.c 6 void print_info(int signo) 7 { 8 printf("SIGPROF Timer fired\n"); //简单的打印,表示 timer 到期 9 } 10 11 void init_sigaction(void) 12 { 13 struct sigaction act; 14 act.sa_handler = print_info; //为什么参数可以没有 15 act.sa_flags = 0; 16 sigemptyset(&act.sa_mask); 17 sigaction(SIGPROF,&act,NULL); //设置信号 SIGPROF 的处理函数为 print_info 18 } 19 void init_time() 20 { 21 struct itimerval value; 22 value.it_value.tv_sec=2; 23 value.it_value.tv_usec=0; 24 value.it_interval=value.it_value; 25 setitimer(ITIMER_PROF,&value,NULL); //初始化 timer,到期发送 SIGPROF 信号 26 } 27 int main() 28 { 29 init_sigaction(); 30 init_time(); 31 int sum = 0; 32 // while(1){sum++;if(sum == 10) break;} 33 while(1); 34 return 0; 35 }
人生就像心电图,想要一帆风顺,除非game-over