آموزش C++

مباحث پایه زبان C++

کار با تاریخ و زمان در C++ – آموزش زبان C++

  • شنبه ۳ آذر ۱۳۹۷
  • بازدید ۱۳,۹۴۷ نفر

تصویر cpp-date-and-time_4460 کار با تاریخ و زمان در C++ - آموزش زبان C++

کار با تاریخ و زمان در C++

کتابخانه استاندارد C++ نوع مناسبی برای تاریخ ارائه نمی کند. زبان C++ ساختارها و توابع مربوط به تاریخ و زمان را از زبان برنامه نویسی C به ارث می برد. به منظور دسترسی به این ساختارها و توابع باید هدر فایل <ctime> را به برنامه خود اضافه کنید.

چهار نوع داده مربوط به زمان وجود دارد که عبارت اند از: clock_t، time_t، size_t و tm. انواع clock_t، size_t و time_t می توانند زمان و تاریخ سیستم را به صورت عدد صحیح نشان دهند.

ساختار مربوط به tm را در زیر مشاهده می کنید:

در جدول زیر توابع مهمی که هنگام کار با تاریخ و زمان در زبان C++ استفاده می کنیم را مشاهده می کنید. همه این توابع بخشی از کتابخانه استاندارد C/C++ هستند.

ردیفتوضیحات
1time_t time(time_t *time)

این تابع زمان تقویم فعلی سیستم را در تعداد ثانیه ای که از 1 ژانویه 1970 سپری شده است را باز میگرداند. اگر سیستم زمان نداشته باشد، مقدار 1 باز میگرداند.

2char *ctime(const time_t *time)

این تابع تاریخ را در فرمت “day month year hours:minutes:seconds year\n\0” باز میگرداند.

3struct tm *localtime(const time_t *time)

این تابع یک اشاره گر از نوع ساختار tm باز میگرداند و زمان محلی را نشان می دهد.

4clock_t clock(void)

این تابع به صورت تقریبی زمان سپری شده از موقعی که یک برنامه فراخوانی شده اجرا می شود را باز میگرداند. اگر این زمان در دسترس نباشد، مقدار 1 باز میگرداند.

5char * asctime ( const struct tm * time )

این تابع اطلاعات ذخیره شده در ساختار tm را به صورت رشته و با فرمت “day month date hours:minutes:seconds year\n\0” باز میگرداند.

6struct tm *gmtime(const time_t *time)

این تابع زمان داده شده را به زمان تقویمی تبدیل می کند که به عنوان UTC بیان می شود.

7time_t mktime(struct tm *time)

این تابع مقدار معادل زمان تقویم محلی در ساختار مشخص شده توسط زمان را باز میگرداند.

8double difftime ( time_t time2, time_t time1 )

این تابع اختلاف زمانی بین time1 و time2 را بر حسب ثانیه باز میگرداند.

9size_t strftime()

این تابع برای فرمت بندی تاریخ و زمان در فرمت های مشخص استفاده می شود.

تاریخ و زمان فعلی

در برنامه نویسی ممکن است وضعیتی پیش آید که بخواهد تاریخ و زمان سیستم را بدانید. مثال زیر نشان می دهد که می توان با استفاده از توابع مربوط به تاریخ و زمان موجود در کتابخانه زبان C تاریخ  زمان فعلی سیستم را بدست آورد.

امتحان کنید

زمانی که کد بالا توسط کامپایلر زبان C++ اجرا شود، نتیجه زیر را تولید خواهد کرد:

استفاده از ساختار tm برای فرمت بندی زمان

در زبان برنامه نویسی C/C++ ساختار tm از اهمیت بالایی برخوردار است. همان که در بالا ذکر شد، اکثر توابع مربوط به تاریخ و زمان از این ساختار استفاده می کنند. در مثال زیر از توابع مختلف و همچنین ساختار tm استفاده شده است.

اگر مبحث اشاره گرها و ساختار را مطالعه کرده باشید، می دانید که برای دسترسی به اعضای یک اشاره گر به ساختار باید از عملگر -> استفاده کنید.

امتحان کنید

زمانی که کد بالا کامپایل و اجرا شود، نتیجه زیر را تولید خواهد کرد:

 

ثبت نظر
ریفریش کنید!
نظرات کاربران (۳ مورد)
  1. تصویر آواتار کاربر 0
    سيدمحمدمهدي دشتي یکشنبه , 23 آذر

    سلام من سورس برنامه ای را می خواستم که زمان را از کامپیوتر بگیرد و به صورت لحظه ای (آنلاین )در هنگام اجرای برنامه نشان دهد

  2. تصویر آواتار کاربر 0
    saara شنبه , 19 تیر

    سایت خیلی خوبی دارید امیدوارم موفق باشید https://youmovise.com/

  3. تصویر آواتار کاربر 0
    ناشناس جمعه , 16 دی

    سلام درزمینه برنامه نویسی کسی میتونه کمک کنه؟