I'm trying to print the values in a struct timeval
variable as follows:
int main()
{
struct timeval *cur;
do_gettimeofday(cur);
printf("Here is the time of day: %ld %ld", cur.tv_sec, cur.tv_usec);
return 0;
}
I keep getting this error:
request for member 'tv_sec' in something not a structure or union. request for member 'tv_usec' in something not a structure or union.
How can I fix this?
Because cur
is a pointer. Use
struct timeval cur;
do_gettimeofday(&cur);
In Linux, do_gettimeofday()
requires that the user pre-allocate the space. Do NOT just pass a pointer that is not pointing to anything! You could use malloc()
, but your best bet is just to pass the address of something on the stack.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With