# Calculate date based on another date + number of minutes

Discussion in 'C Programming' started by Golan, Sep 14, 2006.

1. ### GolanGuest

Hi all,

I need to write a code which gets a date (in format 'YYYYMMDDhh24MISS')
and number of seconds (X), and returns the date (again in format
'YYYYMMDDHH24MISS') that is X seconds prior to the first date.
Any ideas?

Golan, Sep 14, 2006

2. ### Richard HeathfieldGuest

Golan said:

> Hi all,
>
> I need to write a code which gets a date (in format 'YYYYMMDDhh24MISS')
> and number of seconds (X), and returns the date (again in format
> 'YYYYMMDDHH24MISS') that is X seconds prior to the first date.
> Any ideas?

I suggest you take a long hard look at the standard library functions
prototyped in <time.h>, and then attempt a solution of your own. If you get
stuck, post your best-effort code and maybe we can help you fix it.

--
Richard Heathfield
"Usenet is a strange place" - dmr 29/7/1999
http://www.cpax.org.uk
email: rjh at above domain (but drop the www, obviously)

Richard Heathfield, Sep 14, 2006

3. ### Frederick GothamGuest

Golan posted:

> Hi all,
>
> I need to write a code which gets a date (in format 'YYYYMMDDhh24MISS')
> and number of seconds (X), and returns the date (again in format
> 'YYYYMMDDHH24MISS') that is X seconds prior to the first date.
> Any ideas?
>
> Thanks in advance

Well you might want to start by using half a brain cell and breaking the
string up:

#include <string.h>

void Process(char const *p)
{
char year[4+1],month[2+1],day[2+1],
hour[2+1],hour_type[2+1],mins[2+1],secs[2+1];

#define SIZE(arr) (sizeof(arr)/sizeof*(arr))

memcpy((x),p,SIZE((x))-1) \
, (x)[SIZE((x))-1] = 0 \
, p += SIZE((x))-1 )

/* Now do some more stuff */

#undef SIZE
}

--

Frederick Gotham

Frederick Gotham, Sep 14, 2006
4. ### Guest

Golan wrote:
> Hi all,
>
> I need to write a code which gets a date (in format 'YYYYMMDDhh24MISS')
> and number of seconds (X), and returns the date (again in format
> 'YYYYMMDDHH24MISS') that is X seconds prior to the first date.
> Any ideas?
>
> Thanks in advance

http://sourceforge.net/projects/aptimelib
http://sourceforge.net/projects/yest
http://sourceforge.net/projects/jday

Some people like to reinvent the wheel.

Others go down to the wheel store and buy a shiny new wheel.

I just traipse on over to Sourceforge. They're giving wheels away.

, Sep 16, 2006