日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

自己写 localtime 函数(含完整注释,代码)转载

發布時間:2025/5/22 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 自己写 localtime 函数(含完整注释,代码)转载 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

localtime()在多線程中使用的少的時候是不會出錯的

現localtime和ctime等函數在linux中的返回值均存放在一個靜態區中,即TLS變量。如果在多線程程序中比較頻繁的調用此函數,則可能出現內容錯亂的情況。

//曾在某平臺下多線程中使用localtime庫函數。可惡的是,每當程序運行
//一段時間后,都要出現內存泄露。查了數個夜晚為什么,無從斷定。
//只能狠狠心,自己寫了個localtimes,功能與localtime庫函數相同。
//有了它以后,我就不再因內存泄露而煩惱了。
//要知道“內存泄露”是程序員大的一大恥辱。

//這個localtimes在多線程下已經運行了3年,還沒發生問題,放心使用。

//一年中每個月的天數,非閏年
const?char?Days[12]?=?{31,?28,?31,?30,?31,?30,?31,?31,?30,?31,?30,?31};

/*++------------------------------------------------------------------------

??Function:
??????????????localtimes

Modification?History

Jurassic???????????2002.1????Created.??????????????
--------------------------------------------------------------------------*/
void
__stdcall
localtimes(
???time_t?time,
???long?timezone,
???????????struct?tm?*tm_time
)
{
????unsigned??__int32?n32_Pass4year;
??????????????__int32?n32_hpery;

????//計算時差
????time=time-timezone;
????
????if(time?<?0)
????{
???????time?=?0;
????}
????//取秒時間
????tm_time->tm_sec=(int)(time?%?60);
????time?/=?60;
????//取分鐘時間
????tm_time->tm_min=(int)(time?%?60);
????time?/=?60;
????//取過去多少個四年,每四年有?1461*24?小時
????n32_Pass4year=((unsigned?int)time?/?(1461L?*?24L));
????//計算年份
????tm_time->tm_year=(n32_Pass4year?<<?2)+70;
????//四年中剩下的小時數
????time?%=?1461L?*?24L;
????//校正閏年影響的年份,計算一年中剩下的小時數
????for?(;;)
????{
????????//一年的小時數
????????n32_hpery?=?365?*?24;
????????//判斷閏年
????????if?((tm_time->tm_year?&?3)?==?0)
{
????????????//是閏年,一年則多24小時,即一天
????????????n32_hpery?+=?24;
}
????????if?(time?<?n32_hpery)
{
????????????break;
}
????????tm_time->tm_year++;
????????time?-=?n32_hpery;
????}
????//小時數
????tm_time->tm_hour=(int)(time?%?24);
????//一年中剩下的天數
????time?/=?24;
????//假定為閏年
????time++;
????//校正潤年的誤差,計算月份,日期
????if?((tm_time->tm_year?&?3)?==?0)
????{
if?(time?>?60)
{
time--;
}
else
{
if?(time?==?60)
{
tm_time->tm_mon?=?1;
tm_time->tm_mday?=?29;
return?;
}
}
????}
????//計算月日
????for?(tm_time->tm_mon?=?0;?Days[tm_time->tm_mon]?<?time;tm_time->tm_mon++)
????{
??????????time?-=?Days[tm_time->tm_mon];
????}

????tm_time->tm_mday?=?(int)(time);

????return;

}

轉載于:https://www.cnblogs.com/aixingfou/archive/2011/07/13/2105672.html

總結

以上是生活随笔為你收集整理的自己写 localtime 函数(含完整注释,代码)转载的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 中文字幕一区二区视频 | 欧美大肥婆大肥bbbbb | 97在线超碰 | 日韩欧美国产高清91 | 蜜臀av性久久久久蜜臀aⅴ麻豆 | 免费看国产黄色 | 国产精品2区 | 人人舔人人干 | 天天干天天爱天天射 | 放荡闺蜜高h苏桃情事h | 国产精品无码成人片 | 国产精品无套 | 国产一区在线看 | 国产日韩欧美自拍 | 国产在线观看一区 | 色婷婷伊人 | 黄色av免费观看 | 欧美日韩激情在线观看 | 亚洲av永久无码精品一百度影院 | 一区二区看片 | 亚洲成肉网 | 国产黄色片免费观看 | 欧美在线影院 | 国产精品视频网址 | 无码av天堂一区二区三区 | 国产无遮挡呻吟娇喘视频 | 九九综合九九 | 欧美一区在线看 | 国产愉拍 | 欧美性xxxxx极品娇小 | 久天堂 | 日韩成人在线观看 | 国产aaaaaaa| 午夜视频1000 | 色屋在线 | 尤物videos另类xxxx| 欧美精品视 | 亚洲8888 | a级性生活视频 | 激情视频网 | 91美女高潮出水 | 特一级黄色 | 麻豆av电影在线 | 深爱激情站| 色六月婷婷 | 毛片美女| 中文字幕va | 五月婷婷开心 | 日本中文字幕有码 | 欧美国产精品一区二区 | 国产夫妻在线 | 日本成人一级片 | 色久av| 91中文在线观看 | 成人免费大片黄在线播放 | a√天堂资源在线 | 99视频在线播放 | 亚洲13p| 欧美美女一级片 | 成人香蕉视频在线观看 | www污污 | 最新日韩精品 | 欧美一级视频免费 | 韩国成人理伦片免费播放 | 久久久久久久一区 | 国产精华一区二区三区 | 森泽佳奈作品在线观看 | 免费看黄色小视频 | 国产精品中文字幕在线观看 | 色97色 | 国产精品国产av | 免费看a视频 | 激情久久中文字幕 | 亚州男人的天堂 | 中文字幕+乱码+中文 | 亚洲男人在线天堂 | 捆绑无遮挡打光屁股 | 亚洲国产第一页 | 人人澡人人添 | 日韩系列在线 | 日本三区视频 | 欧美一级视频 | 影音先锋中文字幕一区 | 日本精品国产 | 成人小视频免费观看 | 日日干狠狠干 | 黄色片特级 | 久久久久久69 | 国产精品久久久久久久久夜色 | 97久久精品 | 瑟瑟在线视频 | 97在线影院| 欧美性大战久久久久久 | 国产精品无码白浆高潮 | 少妇资源 | av亚州 | 中文字幕精品在线 | 操穴网站 | 精品国产乱码久久久久久1区二区 |