C date and time functions
C standard library |
---|
General topics |
Miscellaneous headers |
The C date and time functions are a group of functions in the standard library of the C programming language implementing date and time manipulation operations.[1] They provide support for time acquisition, conversion between date formats, and formatted output to strings.
Overview of functions
The C date and time operations are defined in the time.h
header file (ctime
header in C++).
Identifier | Description | |
---|---|---|
Time manipulation |
difftime |
computes the difference between times |
time |
returns the current time of the system as time since the epoch (which is usually the Unix epoch) | |
clock |
returns a processor tick count associated with the process | |
Format conversions |
asctime |
converts a tm object to a textual representation (deprecated) |
ctime |
converts a time_t object to a textual representation | |
strftime |
converts a tm object to custom textual representation | |
wcsftime |
converts a tm object to custom wide string textual representation | |
gmtime |
converts time since the epoch to calendar time expressed as Coordinated Universal Time[2] | |
localtime |
converts time since the epoch to calendar time expressed as local time | |
mktime |
converts calendar time to time since the epoch | |
Constants | CLOCKS_PER_SEC |
number of processor clock ticks per second |
Types | tm |
calendar time type |
time_t |
time since the epoch type | |
clock_t |
process running time type |
Example
The following C source code snippet prints the current time to the standard output stream.
#include <time.h> #include <stdlib.h> #include <stdio.h> int main(void) { time_t current_time; char* c_time_string; /* Obtain current time as seconds elapsed since the Epoch. */ current_time = time(NULL); if (current_time == ((time_t)-1)) { (void) fprintf(stderr, "Failure to compute the current time.\n"); return EXIT_FAILURE; } /* Convert to local time format. */ c_time_string = ctime(¤t_time); if (c_time_string == NULL) { (void) fprintf(stderr, "Failure to convert the current time.\n"); return EXIT_FAILURE; } /* Print to stdout. */ (void) printf("Current time is %s\n", c_time_string); return EXIT_SUCCESS; }
The output is:
Current time is Wed Aug 20 17:53:49 2014
See also
References
- ↑ ISO/IEC 9899:1999 specification (PDF). p. 351, § 7.32.2.
- ↑ open-std.org - Committee Draft -- May 6, 2005 page 355
External links
The Wikibook C Programming has a page on the topic of: C Programming/C Reference |
|