strftime()
C++ ctime strftime() funksiyasi
Misol
Joriy sanani turli ko‘rinishlarda ifodalang:
time_t timestamp;
char output[50];
struct tm * datetime;
time(×tamp);
datetime = localtime(×tamp);
strftime(output, 50, "%B %e, %Y", datetime);
cout << output << "\n";
strftime(output, 50, "%I:%M:%S %p", datetime);
cout << output << "\n";
strftime(output, 50, "%D", datetime);
cout << output << "\n";
strftime(output, 50, "%c", datetime);
cout << output << "\n";
O‘zingiz sinab ko‘ring »
Ta’rif va qo‘llanilishi
strftime() funksiyasi sana va vaqtning (tm strukturasi orqali berilgan) C uslubidagi string ko‘rinishini char massiviga yozadi. Sana va vaqt qanday ifodalanishini format parametri belgilaydi.
Eslatma: Vaqt belgisidan tm strukturasini olish uchun gmtime() yoki localtime() funksiyasidan foydalaning.
Format stringi
Format stringi massivga nusxalanadi, bunda undagi har bir format spetsifikatori hosil qilingan qiymat bilan almashtiriladi. Quyidagi jadvalda barcha format spetsifikatorlari keltirilgan:
| Format spetsifikatori | Tavsif | Misol |
|---|---|---|
%a |
Hafta kunining qisqa ko‘rinishi | Fri |
%A |
Hafta kunining to‘liq ko‘rinishi | Friday |
%b |
Oy nomining qisqa ko‘rinishi | Dec |
%B |
Oy nomining to‘liq ko‘rinishi | December |
%c |
Sana va vaqtning to‘liq ko‘rinishi | Fri Dec 17 14:30:01 2023 |
%C |
Asr (4 xonali yilning dastlabki ikki raqamini olishga teng) | 20 |
%d |
Oy kuni (boshida nol bilan) | 09 |
%D |
%m/%d/%y ga teng sana ko‘rinishi |
12/17/23 |
%e |
Oy kuni (boshida bo‘sh joy bilan) | 9 |
%F |
%Y-%m-%d ga teng sana ko‘rinishi |
2023-12-17 |
%g |
Haftaga asoslangan yilning 2 xonali ko‘rinishi (haftaga asoslangan yillar hafta boshidan boshlanadi) | 23 |
%G |
Haftaga asoslangan yilning 4 xonali ko‘rinishi (haftaga asoslangan yillar hafta boshidan boshlanadi) | 2023 |
%h |
Oy nomining qisqa ko‘rinishi (%b ga teng) |
Dec |
%H |
Soatning 24 soatlik formati | 14 |
%I |
Soatning 12 soatlik formati | 02 |
%j |
Yilning kuni (0 dan 365 gacha) | 351 |
%m |
Oyning sonli ko‘rinishi | 351 |
%M |
Soat ichidagi daqiqalar | 30 |
%n |
\n yangi qator belgisi |
|
%p |
AM yoki PM | PM |
%r |
To‘liq 12 soatlik vaqt formati | 02:30:01 PM |
%R |
%H:%M ga teng 24 soatlik vaqt formati |
14:30 |
%S |
Daqiqa ichidagi soniyalar | 01 |
%t |
\t tabulyatsiya belgisi |
|
%T |
%H:%M:%S ga teng to‘liq 24 soatlik vaqt formati |
14:30:01 |
%u |
Hafta kunining sonli ko‘rinishi (dushanbadan boshlab 1 dan 7 gacha) | 7 |
%U |
Yilning haftasi (0 dan boshlanadi, 1-hafta yilning birinchi yakshanbasidan boshlanadi) | 51 |
%V |
Yilning haftasi (1 dan boshlanadi, 1-hafta yilning birinchi dushanbasidan boshlanadi, yanvardagi birinchi dushanbagacha bo‘lgan kunlar esa oldingi yilga tegishli bo‘ladi) | 50 |
%w |
Hafta kunining sonli ko‘rinishi (yakshanbadan boshlab 0 dan 6 gacha) | 0 |
%W |
Yilning haftasi (0 dan boshlanadi, 1-hafta yilning birinchi dushanbasidan boshlanadi) | 50 |
%x |
Lokalga (locale) asoslangan sana ko‘rinishi | 12/17/23 |
%X |
Lokalga (locale) asoslangan vaqt ko‘rinishi | 14:30:01 |
%y |
Yilning 2 xonali ko‘rinishi | 23 |
%Y |
Yilning 4 xonali ko‘rinishi | 2023 |
%z |
Vaqt mintaqasining sonli siljishi (offset) | +0000 |
%Z |
Vaqt mintaqasi nomi | GMT |
%% |
% belgisi |
% |
Sintaksis
strftime(char * destination, size_t size, const char * format, const struct tm * datetime);
size_t ma’lumot tipi manfiy bo‘lmagan butun sonni ifodalaydi.
Parametr qiymatlari
| Parametr | Tavsif |
|---|---|
| destination | Majburiy. Formatlangan sana yoziladigan char massivi. |
| size | Majburiy. char massivida yozish uchun mavjud joy hajmini belgilaydi (belgilar sonida o‘lchanadi). |
| format | Majburiy. Sana qanday formatlanishi kerakligini belgilaydi. |
| datetime | Majburiy. Ifodalanadigan sana va vaqt haqidagi ma’lumotlarni o‘z ichiga olgan tm strukturasi. |
Texnik tafsilotlar
| Qaytaradi: | Massivga nechta belgi yozilganini bildiruvchi son. Qaytarilgan qiymat 0 bo‘lsa, yozish uchun yetarli joy yo‘qligini bildiradi. |
|---|
W3Schools Pathfinder
Yutuqlaringizni kuzating – bu bepul!
