c语言localtime_s用法,localtime_s, _localtime32_s, _localtime64_s

// crt_localtime_s.c

/* This program uses _time64 to get the current time

* and then uses _localtime64_s() to convert this time to a structure

* representing the local time. The program converts the result

* from a 24-hour clock to a 12-hour clock and determines the

* proper extension (AM or PM).

*/

#include

#include

#include

int main( void )

{

struct tm newtime;

char am_pm[] = "AM";

__time64_t long_time;

char timebuf[26];

errno_t err;

// Get time as 64-bit integer.

_time64( &long_time );

// Convert to local time.

err = _localtime64_s( &newtime, &long_time );

if (err)

{

printf("Invalid argument to _localtime64_s.");

exit(1);

}

if( newtime.tm_hour > 12 ) // Set up extension.

strcpy_s( am_pm, sizeof(am_pm), "PM" );

if( newtime.tm_hour > 12 ) // Convert from 24-hour

newtime.tm_hour -= 12; // to 12-hour clock.

if( newtime.tm_hour == 0 ) // Set hour to 12 if midnight.

newtime.tm_hour = 12;

// Convert to an ASCII representation.

err = asctime_s(timebuf, 26, &newtime);

if (err)

{

printf("Invalid argument to asctime_s.");

exit(1);

}

printf( "%.19s %s\n", timebuf, am_pm );

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值