<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta name="Copyright" content="Copyright (c) 2006 by IBM Corporation"> <title>gettimeofday()--Get Current UTC Time</title> <!-- Begin Header records --> <!-- All rights reserved. Licensed Materials Property of IBM --> <!-- US Government Users Restricted Rights --> <!-- Use, duplication or disclosure restricted by --> <!-- GSA ADP Schedule Contract with IBM Corp. --> <!-- Change History: --> <link rel="stylesheet" type="text/css" href="../rzahg/ic.css"> </head> <body> <!--End Header Records ================================================ --> <!-- Java sync-link =================================================== --> <script type="text/javascript" language="Javascript" src="../rzahg/synch.js"> </script> <a name="Top_Of_Page"></a> <h2>gettimeofday()--Get Current UTC Time</h2> <div class="box" style="width: 60%;"> <br> Syntax<br> <pre> #include <sys/time.h> int gettimeofday (struct timeval *<var>tp</var>, struct timezone *<var>tzp</var>); </pre> <br> Service Program Name:QWCTZUTC<br> <!-- iddvc RMBR --> <br> Default Public Authority: *USE<br> <!-- iddvc RMBR --> <br> Threadsafe: Yes<br> <!-- iddvc RMBR --> <br> </div> <p>The <strong>gettimeofday()</strong> function retrieves the current Coordinated Universal Time (UTC) and places it in the timeval structure pointed to by <var>tp</var>. If <var>tzp</var> is not NULL, the time zone information is returned in the time zone structure pointed to by <var>tzp</var>.</p> <br> <h3>Parameters</h3> <dl> <dt><strong>tp</strong></dt> <dd>(Output) A pointer to a timeval structure that contains the time in seconds and microseconds since 1 January 1970, 00:00:00 UTC (epoch-1970).<br> <br> </dd> <dt><strong>tzp</strong></dt> <dd>(Output) A pointer to a time zone structure that contains the local time zone (measured in minutes west of Greenwich) and a flag that, if nonzero, indicates Daylight Saving Time applies locally during the appropriate part of the year.</dd> </dl> <br> <h3>Authorities and Locks</h3> <p>None</p> <br> <h3>Return Value</h3> <table cellpadding="5"> <!-- cols="5 95" --> <tr> <td align="left" valign="top"><em>0</em></td> <td align="left" valign="top"><strong>gettimeofday()</strong> was successful.<br> <br> </td> </tr> <tr> <td align="left" valign="top"><em>-1</em></td> <td align="left" valign="top"><strong>gettimeofday()</strong> was not successful. The <var>errno</var> variable is set to indicate the error.</td> </tr> </table> <br> <br> <h3>Error Conditions</h3> <p>If <strong>gettimeofday()</strong> is not successful, <var>errno</var> usually indicates one of the following errors. Under some conditions, <var>errno</var> could indicate an error other than those listed here.</p> <table cellpadding="5"> <!-- cols="15 85" --> <tr> <td align="left" valign="top"><em>[EINVAL]</em></td> <td align="left" valign="top">An invalid parameter was found. <p>A parameter passed to this function is not valid.</p> </td> </tr> <tr> <td align="left" valign="top"><em>[EFAULT]</em></td> <td align="left" valign="top">The address used for an argument is not correct. <p>In attempting to use an argument in a call, the system detected an address that is not valid.</p> <p>While attempting to access a parameter passed to this function, the system detected an address that is not valid.</p> </td> </tr> <tr> <td align="left" valign="top"><em>[EUNKNOWN]</em></td> <td align="left" valign="top">Unknown system state. <p>The operation failed because of an unknown system state. See any messages in the job log and correct any errors that are indicated, then retry the operation.</p> </td> </tr> </table> <br> <br> <h3>Error Messages</h3> <p>None.</p> <br> <h3>Usage Notes</h3> <ul> <li>For the best performance, specify NULL for the <var>tzp</var> parameter.</li> </ul> <br> <h3>Related Information</h3> <ul> <li>The <<strong>sys/time.h</strong>> file (see <a href= "unix13.htm">Header Files for UNIX-Type Functions</a>)<br> <br> </li> <li><a href="adjtime.htm">adjtime()--Adjust System Clock</a><br> <br> </li> <li><a href="ftime.htm">ftime()--Get Date and Time</a><br> <br> </li> <li><a href="cvttomit.htm">Qp0zCvtToMITime()--Convert Timeval Structure to _MI_ Time</a><br> <br> </li> <li><a href="settod.htm">settimeofday()--Set System Clock</a></li> </ul> <br> <h3>Example</h3> <p>See <a href="../apiref/aboutapis.htm#codedisclaimer">Code disclaimer information</a> for information pertaining to code examples.</p> <p>The following example gets the current UTC time:</p> <pre> #include <sys/time.h> #include <stdio.h> #include <errno.h> int main(int argc, char *argv[]) { struct timeval now; int rc; rc=gettimeofday(&now, NULL); if(rc==0) { printf("gettimeofday() successful.\n"); printf("time = %u.%06u\n", now.tv_sec, now.tv_usec); } else { printf("gettimeofday() failed, errno = %d\n", errno); return -1; } return 0; } </pre> <strong>Example Output:</strong> <pre> gettimeofday() successful. time = 866208142.290944 </pre> <br> <hr> API introduced: V4R2 <hr> <center> <table cellpadding="2" cellspacing="2"> <tr align="center"> <td valign="middle" align="center"><a href="#Top_Of_Page">Top</a> | <a href= "unix.htm">UNIX-Type APIs</a> | <a href="aplist.htm">APIs by category</a></td> </tr> </table> </center> </body> </html>