এই আর্টিকেলে আমরা C++-এ difftime() ফাংশনের সিনট্যাক্স, কাজকর্ম এবং রিটার্ন ভ্যালু নিয়ে আলোচনা করব।
difftime() ফাংশনটি C++-এ একটি বিল্ট-ইন ফাংশন যা <ctime> হেডার ফাইলে ডিফাইন করা আছে। এই ফাংশন দুটি time_t টাইপের প্যারামিটার গ্রহণ করে এবং দুটি সময়ের পার্থক্য (সেকেন্ডে) ক্যালকুলেট করে।
সিনট্যাক্স
double difftime(time_t end, time_t beginning);
রিটার্ন ভ্যালু
দুটি সময়ের পার্থক্য সেকেন্ডে, double ডেটা টাইপে রিটার্ন করে।
উদাহরণ ১: নতুন বছরের পর থেকে बीते সেকেন্ড
#include <stdio.h>
#include <time.h>
int main() {
time_t now;
struct tm newyear;
double seconds;
time(&now); // get current time
newyear = *localtime(&now);
newyear.tm_hour = 0; newyear.tm_min = 0; newyear.tm_sec = 0;
newyear.tm_mon = 0; newyear.tm_mday = 1; // জানুয়ারি ১
seconds = difftime(now, mktime(&newyear));
printf("%.f seconds since new year in the current timezone.\n", seconds);
return 0;
}
আউটপুট
3351041 seconds since new year in the current timezone.
উদাহরণ ২: প্রোগ্রাম এক্সিকিউশন টাইম মাপা
#include <iostream>
#include <ctime>
using namespace std;
int main() {
time_t start, ending;
time(&start);
// কিছু ডামি কাজ
for (int i = 0; i < 50000; i++)
for (int j = 0; j < 50000; j++);
for (int i = 0; i < 50000; i++)
for (int j = 0; j < 50000; j++);
for (int i = 0; i < 50000; i++)
for (int j = 0; j < 50000; j++);
time(&ending);
cout << "Total time required = " << difftime(ending, start) << " seconds" << endl;
return 0;
}
আউটপুট
Total time required = 37 seconds
নোট: এক্সিকিউশন টাইম সিস্টেমের পারফরম্যান্সের উপর নির্ভর করে ভিন্ন হবে।