🎓 Top 15 Udemy Courses (80-90% Discount): My Udemy Courses - Ramesh Fadatare — All my Udemy courses are real-time and project oriented courses.
▶️ Subscribe to My YouTube Channel (178K+ subscribers): Java Guides on YouTube
▶️ For AI, ChatGPT, Web, Tech, and Generative AI, subscribe to another channel: Ramesh Fadatare on YouTube
The time() function in C is a standard library function that returns the current calendar time as a time_t object. It is part of the C standard library (time.h). This function is useful for obtaining the current time for various purposes, such as logging, time-stamping, and time calculations.
Table of Contents
- Introduction
time()Function Syntax- Examples
- Getting the Current Time
- Using
time()to Measure Elapsed Time
- Real-World Use Case
- Conclusion
Introduction
The time() function retrieves the current calendar time. If the argument is not NULL, it also stores the time in the object pointed to by the argument. The time is represented as the number of seconds elapsed since 00:00 hours, Jan 1, 1970 UTC (Unix epoch).
time() Function Syntax
The syntax for the time() function is as follows:
#include <time.h>
time_t time(time_t *timer);
Parameters:
timer: A pointer to atime_tobject where the result will be stored. IftimerisNULL, the current time is not stored.
Returns:
- The function returns the current calendar time as a
time_tvalue. If the current time is not available, it returns-1.
Examples
Getting the Current Time
To demonstrate how to use time() to get the current time, we will write a simple program that retrieves and prints the current time.
Example
#include <stdio.h>
#include <time.h>
int main() {
time_t current_time;
// Get the current time
current_time = time(NULL);
// Check if the time retrieval was successful
if (current_time != (time_t)(-1)) {
// Print the current time
printf("Current time: %s", ctime(¤t_time));
} else {
printf("Failed to get the current time.\n");
}
return 0;
}
Output:
Current time: Tue Jul 4 12:34:56 2023
Using time() to Measure Elapsed Time
This example shows how to use time() to measure the elapsed time between two points in a program.
Example
#include <stdio.h>
#include <time.h>
int main() {
time_t start_time, end_time;
double elapsed_time;
// Get the start time
start_time = time(NULL);
// Simulate a process by sleeping for 5 seconds
printf("Sleeping for 5 seconds...\n");
sleep(5);
// Get the end time
end_time = time(NULL);
// Calculate the elapsed time
elapsed_time = difftime(end_time, start_time);
// Print the result
printf("Elapsed time: %.2f seconds\n", elapsed_time);
return 0;
}
Output:
Sleeping for 5 seconds...
Elapsed time: 5.00 seconds
Real-World Use Case
Logging Timestamps
In real-world applications, the time() function can be used to log timestamps, providing a record of when certain events occurred.
Example: Logging with Timestamps
#include <stdio.h>
#include <time.h>
void log_event(const char *event) {
time_t current_time = time(NULL);
if (current_time != (time_t)(-1)) {
printf("[%s] %s\n", ctime(¤t_time), event);
} else {
printf("Failed to get the current time.\n");
}
}
int main() {
log_event("Program started");
// Simulate some processing
sleep(2);
log_event("Processing complete");
return 0;
}
Output:
[Wed Jul 4 12:34:56 2023] Program started
[Wed Jul 4 12:34:58 2023] Processing complete
Conclusion
The time() function is essential for retrieving the current calendar time in C. It is useful in various applications, particularly in logging, time-stamping, and measuring elapsed time, where obtaining the current time is necessary.
Comments
Post a Comment
Leave Comment