Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
| From | Eric Sosman <esosman@comcast-dot-net.invalid> |
|---|---|
| Newsgroups | comp.lang.c |
| Subject | Re: mktime |
| Date | 2012-12-06 17:42 -0500 |
| Organization | A noiseless patient Spider |
| Message-ID | <k9r6vb$den$2@dont-email.me> (permalink) |
| References | (1 earlier) <k9qcil$oh$1@dont-email.me> <87lidb16dx.fsf@huddi.jernurt.dk> <k9qr5b$st$1@dont-email.me> <lnfw3iq60r.fsf@nuthaus.mib.org> <k9r6kc$den$1@dont-email.me> |
On 12/6/2012 5:36 PM, Eric Sosman wrote:
> On 12/6/2012 3:28 PM, Keith Thompson wrote:
>> Eric Sosman <esosman@comcast-dot-net.invalid> writes:
>>
>>> FWIW, PJ Plauger seems to agree (he's non-normative, but since
>>> he served on the library subcommittee for the original ANSI Standard,
>>> he's a pretty good indicator of intent). In "The Standard C Library"
>>> he exhibits a sample implementation of mktime(), and in describing
>>> its underpinnings he writes
>>>
>>> "You can start with the year 2000, back up 2,000 months,
>>> and advance 2 billion seconds, for example. [...] The
>>> logic is carefully crafted to avoid integer overflow
>>> regardless of argument values."
>>
>> You can advance 2 billion seconds *if* int is at least 32 bit (tm_sec is
>> of type int).
>
> Don't complain to me; complain to the quoted author. Besides:
>
> for (int count = 0; count < 100; ++count) {
> mktime(tm);
> tm->tm_sec += 20000;
> }
> mktime(tm);
> printf("So there, nyaaah!\n");
Oh, ratz.
for (int a = 0; a < 1000; ++a) {
for (int b = 0; b < 1000; ++b) {
mktime(tm);
tm->tm_sec += 2000;
}
}
mktime(tm);
printf("So there, this time for sure!\n");
--
Eric Sosman
esosman@comcast-dot-net.invalid
Back to comp.lang.c | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
mktime Anders Wegge Keller <wegge@wegge.dk> - 2012-12-06 15:25 +0100
Re: mktime James Kuyper <jameskuyper@verizon.net> - 2012-12-06 09:53 -0500
Re: mktime Eric Sosman <esosman@comcast-dot-net.invalid> - 2012-12-06 10:11 -0500
Re: mktime Anders Wegge Keller <wegge@wegge.dk> - 2012-12-06 17:40 +0100
Re: mktime Eric Sosman <esosman@comcast-dot-net.invalid> - 2012-12-06 14:20 -0500
Re: mktime Keith Thompson <kst-u@mib.org> - 2012-12-06 12:28 -0800
Re: mktime Eric Sosman <esosman@comcast-dot-net.invalid> - 2012-12-06 17:36 -0500
Re: mktime Eric Sosman <esosman@comcast-dot-net.invalid> - 2012-12-06 17:42 -0500
Re: mktime Keith Thompson <kst-u@mib.org> - 2012-12-06 12:20 -0800
Re: mktime Anders Wegge Keller <wegge@wegge.dk> - 2012-12-06 21:37 +0100
Re: mktime "Heinrich Wolf" <invalid@invalid.invalid> - 2012-12-07 09:48 +0100
Re: mktime James Kuyper <jameskuyper@verizon.net> - 2012-12-07 08:08 -0500
Re: mktime "christian.bau" <christian.bau@cbau.wanadoo.co.uk> - 2012-12-07 09:23 -0800
Re: mktime James Kuyper <jameskuyper@verizon.net> - 2012-12-07 13:14 -0500
Re: mktime Eric Sosman <esosman@comcast-dot-net.invalid> - 2012-12-07 13:46 -0500
Re: mktime "Heinrich Wolf" <invalid@invalid.invalid> - 2012-12-07 19:59 +0100
Re: mktime Robert Wessel <robertwessel2@yahoo.com> - 2012-12-07 15:50 -0600
Re: mktime "Heinrich Wolf" <invalid@invalid.invalid> - 2012-12-07 21:39 +0100
Re: mktime Eric Sosman <esosman@comcast-dot-net.invalid> - 2012-12-07 17:17 -0500
Re: mktime Keith Thompson <kst-u@mib.org> - 2012-12-07 17:50 -0800
Re: mktime Eric Sosman <esosman@comcast-dot-net.invalid> - 2012-12-08 08:34 -0500
Re: mktime pacman@kosh.dhis.org (Alan Curry) - 2012-12-07 22:44 +0000
Re: mktime "Heinrich Wolf" <invalid@invalid.invalid> - 2012-12-08 10:31 +0100
Re: mktime pacman@kosh.dhis.org (Alan Curry) - 2012-12-08 20:50 +0000
Re: mktime "Heinrich Wolf" <invalid@invalid.invalid> - 2012-12-09 11:39 +0100
Re: mktime pacman@kosh.dhis.org (Alan Curry) - 2012-12-09 19:47 +0000
Re: mktime "Heinrich Wolf" <invalid@invalid.invalid> - 2012-12-10 09:51 +0100
Re: mktime sla29970@gmail.com - 2012-12-09 08:41 -0800
csiph-web