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