Notice: file_put_contents(): Write of 8445 bytes failed with errno=28 No space left on device in /var/www/tgoop/post.php on line 50

Warning: file_put_contents(): Only 16384 of 24829 bytes written, possibly out of free disk space in /var/www/tgoop/post.php on line 50
Learning ©➕➕@Learncpp P.1304
LEARNCPP Telegram 1304
#ctime #time.h #strftime
🔵زمان (time)

🔹تابع strftime

size_t strftime (char* ptr, size_t maxsize, const char* format,const struct tm* timeptr );

این تابع هم برای تبدیل کردن زمان به رشته با فرمتی خاص به کار می رود.
در این تابع دقیقا عین تابع ( )printf عمل می کنیم، یعنی برای هر کدام از زمان ها مثل ماه، سال یا روز باید یک کاراکتر خاص را بلد باشیم.
مثل تابع ( )printfکه برای نشان دادن هرکدام از انواع داده ها باید از یک کاراکتر فرمت خاصی راحفظ باشیم.

🔹پارامتر ها :

🔻مفهوم ptr* :
این یک اشاره گر به ابتدا آرایه ای است که می خواهیم زمان را داخلش بریزیم.

🔻مفهوم Maxsize :
همان‌ طول آرایه است که وارد تابع می شود تا تابع بداند چه مقدار حافظه برای نوشتن دارد.

🔻مفهوم format* :
همانطور که می دانید یک رشته حاوی کاراکترهایی است که به طور منظم کنار هم قرار گرفته تا معنی دار باشند، به همین نظم و ترتیب خاص فرمت رشته می گوییم.
حال می توانیم به طرق مختلف فرمت رشته را عوض کنیم مثلا یک رشته را به عدد تبدیل کنیم یا برعکس حالا گاهی لازم است یک زمان را به رشته تبدیل کنیم باید به strftime بگوییم که این کدام نوعِ زمان است مثل تابع ( )printf شما لیست کاراکتر های فرمت را داخل( )printf می دانید ولی این کاراکتر ها در strftime متفاوت است.
این میشود :
specifier  Replaced by  Example

🔹%a
Abbreviated weekday name *Thu

🔹%A
Full weekday name *Thursday

🔹%b
Abbreviated month name *Aug

🔹%B
Full month name
*August

🔹%c
Date and time
representation
*Thu Aug 23 14:55:02 2001

🔹%C
Year divided by 100 and truncated to integer (00-99) 20

🔹%d
Day of the month, zero-padded (01-31) 23

🔹%D
Short MM/DD/YY date, equivalent to %m/%d/%y 08/23/01

🔹%e
Day of the month, space-
padded ( 1-31) 23

🔹%F
Short YYYY-MM-DD date, equivalent to %Y-%m-%d 2001-08-23

🔹%g
Week-based year, last two digits (00-99) 01

🔹%G
Week-based year 2001

🔹%h
Abbreviated month name * (same as %b) Aug

🔹%H
Hour in 24h format (00-23)
14

🔹%I
Hour in 12h format (01-12) 02

🔹%j
Day of the year (001-366) 235

🔹%m
Month as a decimal number (01-12) 08

🔹%M
Minute (00-59) 55

🔹%n
New-line character ('\n')

🔹%p
AM or PM designation PM

🔹%r
12-hour clock time * 02:55:02 pm

🔹%R
24-hour HH:MM time, equivalent to %H:%M 14:55

🔹%S
Second (00-61) 02

🔹%t
Horizontal-tab character ('\t')

🔹%T
ISO 8601 time format (HH:MM:SS), equivalent to %H:%M:%S 14:55:02

🔹%u
ISO 8601 weekday as number with Monday as 1 (1-7) 4

🔹%U
Week number with the first Sunday as the first day of week one (00-53) 33

🔹%V
ISO 8601 week number (00-53) 34

🔹%w
Weekday as a decimal number with Sunday as 0 (0-6) 4

🔹%W
Week number with the first Monday as the first day of week one (00-53) 34

🔹%x
Date representation * 08/23/01

🔹%X
Time representation * 14:55:02

🔹%y
Year, last two digits (00-99) 01

🔹%Y
Year 2001

🔹%z
ISO 8601 offset from UTC in timezone (1 minute=1, 1 hour=100)
If timezone cannot be determined, no characters ت +100

🔹%Z
Timezone name or abbreviation *
If timezone cannot be determined, no characters CDT
%% A % sign %


🔻مفهوم timeptr* :
همان زمانی است که می خواهیم فرمت آن را عوض کنیم.

🔹مقادیر بازگشتی :
اگر‌ برای این تابع مشکلی پیش نیاید (که معمولا مشکل کم بودن طول آرایه یا نامفهوم بودن محتوای format می شود) و به اندازه ای فضا داشته باشد که بتواند آخر آرایه را با کاراکتر null پر کند، تعداد کاراکتر های نوشته شده در ptr را برمیگرداند و اگر تابع درکار خود شکست بخورد مقدار صفر را برمیگرداند.

#include <stdio.h>/* puts */
#include <time.h>/* time_t, struct tm, time, localtime, strftime */

int main ( )
{
time_t rawtime;
struct tm *timeinfo;
char buffer[80];

time (&rawtime);
timeinfo=localtime(&rawtime);

strftime (buffer,80,"Now it's %I:%M%p.",timeinfo);
puts (buffer);

return 0;
}


output:
Now it's 03:21PM.

🔰ترجمه شده از سایت
www.cplusplus.com

@Learncpp



tgoop.com/Learncpp/1304
Create:
Last Update:

#ctime #time.h #strftime
🔵زمان (time)

🔹تابع strftime

size_t strftime (char* ptr, size_t maxsize, const char* format,const struct tm* timeptr );

این تابع هم برای تبدیل کردن زمان به رشته با فرمتی خاص به کار می رود.
در این تابع دقیقا عین تابع ( )printf عمل می کنیم، یعنی برای هر کدام از زمان ها مثل ماه، سال یا روز باید یک کاراکتر خاص را بلد باشیم.
مثل تابع ( )printfکه برای نشان دادن هرکدام از انواع داده ها باید از یک کاراکتر فرمت خاصی راحفظ باشیم.

🔹پارامتر ها :

🔻مفهوم ptr* :
این یک اشاره گر به ابتدا آرایه ای است که می خواهیم زمان را داخلش بریزیم.

🔻مفهوم Maxsize :
همان‌ طول آرایه است که وارد تابع می شود تا تابع بداند چه مقدار حافظه برای نوشتن دارد.

🔻مفهوم format* :
همانطور که می دانید یک رشته حاوی کاراکترهایی است که به طور منظم کنار هم قرار گرفته تا معنی دار باشند، به همین نظم و ترتیب خاص فرمت رشته می گوییم.
حال می توانیم به طرق مختلف فرمت رشته را عوض کنیم مثلا یک رشته را به عدد تبدیل کنیم یا برعکس حالا گاهی لازم است یک زمان را به رشته تبدیل کنیم باید به strftime بگوییم که این کدام نوعِ زمان است مثل تابع ( )printf شما لیست کاراکتر های فرمت را داخل( )printf می دانید ولی این کاراکتر ها در strftime متفاوت است.
این میشود :

specifier  Replaced by  Example

🔹%a
Abbreviated weekday name *Thu

🔹%A
Full weekday name *Thursday

🔹%b
Abbreviated month name *Aug

🔹%B
Full month name
*August

🔹%c
Date and time
representation
*Thu Aug 23 14:55:02 2001

🔹%C
Year divided by 100 and truncated to integer (00-99) 20

🔹%d
Day of the month, zero-padded (01-31) 23

🔹%D
Short MM/DD/YY date, equivalent to %m/%d/%y 08/23/01

🔹%e
Day of the month, space-
padded ( 1-31) 23

🔹%F
Short YYYY-MM-DD date, equivalent to %Y-%m-%d 2001-08-23

🔹%g
Week-based year, last two digits (00-99) 01

🔹%G
Week-based year 2001

🔹%h
Abbreviated month name * (same as %b) Aug

🔹%H
Hour in 24h format (00-23)
14

🔹%I
Hour in 12h format (01-12) 02

🔹%j
Day of the year (001-366) 235

🔹%m
Month as a decimal number (01-12) 08

🔹%M
Minute (00-59) 55

🔹%n
New-line character ('\n')

🔹%p
AM or PM designation PM

🔹%r
12-hour clock time * 02:55:02 pm

🔹%R
24-hour HH:MM time, equivalent to %H:%M 14:55

🔹%S
Second (00-61) 02

🔹%t
Horizontal-tab character ('\t')

🔹%T
ISO 8601 time format (HH:MM:SS), equivalent to %H:%M:%S 14:55:02

🔹%u
ISO 8601 weekday as number with Monday as 1 (1-7) 4

🔹%U
Week number with the first Sunday as the first day of week one (00-53) 33

🔹%V
ISO 8601 week number (00-53) 34

🔹%w
Weekday as a decimal number with Sunday as 0 (0-6) 4

🔹%W
Week number with the first Monday as the first day of week one (00-53) 34

🔹%x
Date representation * 08/23/01

🔹%X
Time representation * 14:55:02

🔹%y
Year, last two digits (00-99) 01

🔹%Y
Year 2001

🔹%z
ISO 8601 offset from UTC in timezone (1 minute=1, 1 hour=100)
If timezone cannot be determined, no characters ت +100

🔹%Z
Timezone name or abbreviation *
If timezone cannot be determined, no characters CDT
%% A % sign %


🔻مفهوم timeptr* :
همان زمانی است که می خواهیم فرمت آن را عوض کنیم.

🔹مقادیر بازگشتی :
اگر‌ برای این تابع مشکلی پیش نیاید (که معمولا مشکل کم بودن طول آرایه یا نامفهوم بودن محتوای format می شود) و به اندازه ای فضا داشته باشد که بتواند آخر آرایه را با کاراکتر null پر کند، تعداد کاراکتر های نوشته شده در ptr را برمیگرداند و اگر تابع درکار خود شکست بخورد مقدار صفر را برمیگرداند.

#include <stdio.h>/* puts */
#include <time.h>/* time_t, struct tm, time, localtime, strftime */

int main ( )
{
time_t rawtime;
struct tm *timeinfo;
char buffer[80];

time (&rawtime);
timeinfo=localtime(&rawtime);

strftime (buffer,80,"Now it's %I:%M%p.",timeinfo);
puts (buffer);

return 0;
}


output:
Now it's 03:21PM.

🔰ترجمه شده از سایت
www.cplusplus.com

@Learncpp

BY Learning ©➕➕


Share with your friend now:
tgoop.com/Learncpp/1304

View MORE
Open in Telegram


Telegram News

Date: |

Today, we will address Telegram channels and how to use them for maximum benefit. Telegram Channels requirements & features So far, more than a dozen different members have contributed to the group, posting voice notes of themselves screaming, yelling, groaning, and wailing in various pitches and rhythms. While the character limit is 255, try to fit into 200 characters. This way, users will be able to take in your text fast and efficiently. Reveal the essence of your channel and provide contact information. For example, you can add a bot name, link to your pricing plans, etc. End-to-end encryption is an important feature in messaging, as it's the first step in protecting users from surveillance.
from us


Telegram Learning ©➕➕
FROM American