Loading...
Searching...
No Matches
date.c
Go to the documentation of this file.
/*!
* \file lib/gis/date.c
*
* \brief GIS Library - Date functions.
*
* (C) 2001-2009 by the GRASS Development Team
*
* This program is free software under the GNU General Public License
* (>=v2). Read the file COPYING that comes with GRASS for details.
*
* \author Original author CERL
*/
#include <time.h>
#include <grass/gis.h>
/*!
* \brief Current date and time.
*
* Returns a pointer to a string which is the current date and
* time. The format is the same as that produced by the UNIX
* <tt>date</tt> command.
*
* \return pointer to a string holding date/time
*/
const char *G_date(void)
{
static int initialized;
static char *date;
time_t clock;
struct tm *local;
char *tdate;
char *d;
if (G_is_initialized(&initialized))
return date;
time(&clock);
local = localtime(&clock);
tdate = asctime(local);
for (d = tdate; *d; d++)
if (*d == '\n')
*d = 0;
date = G_store(tdate);
G_initialize_done(&initialized);
return date;
}
G_initialize_done
void G_initialize_done(int *p)
Definition counter.c:77
G_is_initialized
int G_is_initialized(int *p)
Definition counter.c:60
G_date
const char * G_date(void)
Current date and time.
Definition date.c:26
G_store
char * G_store(const char *s)
Copy string to allocated memory.
Definition strings.c:87