Mercurial > emacs
comparison lib-src/profile.c @ 6026:45b117ac2dbc
(get_time): Simplify; avoid calling index.
(main): exit on EOF.
author | Karl Heuer <kwzh@gnu.org> |
---|---|
date | Tue, 22 Feb 1994 19:22:11 +0000 |
parents | 3fdb74f69f34 |
children | 5bffd741340e |
comparison
equal
deleted
inserted
replaced
6025:6741685c0bb7 | 6026:45b117ac2dbc |
---|---|
52 If reset_watch was not called yet, return NULL. */ | 52 If reset_watch was not called yet, return NULL. */ |
53 | 53 |
54 char * | 54 char * |
55 get_time () | 55 get_time () |
56 { | 56 { |
57 char *result = time_string; | |
58 int i; | |
59 if (watch_not_started) | 57 if (watch_not_started) |
60 return ((char *) 0); /* call reset_watch first ! */ | 58 return ((char *) 0); /* call reset_watch first ! */ |
61 gettimeofday (&TV2, tzp); | 59 gettimeofday (&TV2, tzp); |
62 if (TV1.tv_usec > TV2.tv_usec) | 60 if (TV1.tv_usec > TV2.tv_usec) |
63 { | 61 { |
64 TV2.tv_usec += 1000000; | 62 TV2.tv_usec += 1000000; |
65 TV2.tv_sec--; | 63 TV2.tv_sec--; |
66 } | 64 } |
67 sprintf (result,"%lu.%6lu", | 65 sprintf (time_string, "%lu.%06lu", |
68 TV2.tv_sec - TV1.tv_sec, TV2.tv_usec - TV1.tv_usec); | 66 TV2.tv_sec - TV1.tv_sec, TV2.tv_usec - TV1.tv_usec); |
69 for (result = index (result, '.') + 1; *result == ' '; result++) | |
70 *result = '0'; | |
71 return time_string; | 67 return time_string; |
72 } | 68 } |
73 | 69 |
74 void | 70 void |
75 main () | 71 main () |
76 { | 72 { |
77 char inp[10]; | 73 char inp[10]; |
78 while (1) | 74 while (gets (inp)) |
79 { | 75 { |
80 gets (inp); | |
81 switch (inp[0]) | 76 switch (inp[0]) |
82 { | 77 { |
83 case 'z': | 78 case 'z': |
84 reset_watch (); | 79 reset_watch (); |
85 break; | 80 break; |
88 break; | 83 break; |
89 case 'q': | 84 case 'q': |
90 exit (0); | 85 exit (0); |
91 } | 86 } |
92 } | 87 } |
88 exit (1); | |
93 } | 89 } |