函數:strftime()

來源:互聯網
上載者:User

傳回值的字串依配置的格式來決定。若有傳入時間戳記值,則將時間戳記格式化返回;若無傳入時間戳記值,則將目前伺服器的時間本地格式化返回。月份或者星期名稱隨著本地語系配置 setlocale() 的不同而改變。

返回的字串可以依下列的格式而定:

  • %a 星期幾的縮寫。
  • %A 星期幾的全名。
  • %b 月份名稱的縮寫。
  • %B 月份名稱的全名。
  • %c 本地端日期時間較佳表示字串。
  • %d 用數字表示本月的第幾天 (範圍為 00 至 31)。
  • %H 用 24 小時制數字表示小時數 (範圍為 00 至 23)。
  • %I 用 12 小時制數字表示小時數 (範圍為 01 至 12)。
  • %j 以數字表示當年度的第幾天 (範圍為 001 至 366)。
  • %m 月份的數字 (範圍由 1 至 12)。
  • %M 分鐘。
  • %p 以 'AM' 或 'PM' 表示本地端時間。
  • %S 秒數。
  • %U 數字表示為本年度的第幾周,第一個星期由第一個周日開始。
  • %W 數字表示為本年度的第幾周,第一個星期由第一個周一開始。
  • %w 用數字表示本周的第幾天 ( 0 為周日)。
  • %x 不含時間的日期標記法。
  • %X 不含日期的時間標記法。
  • %y 二位元字表示年份 (範圍由 00 至 99)。
  • %Y 完整的年份數字表示,即四位元。
  • %Z 時區或名稱縮寫。
  • %% % 字元。

 

 

#include "time.h"
#include "stdio.h"

int main(void)
{
 struct tm *ptr;
 time_t lt;
 char str[80];
 lt=time(NULL);
 ptr=localtime(&lt);
 strftime(str,100,"It is now %I %p\n\n",ptr);
 printf(str);

 struct tm *newtime;
 char tmpbuf[128];
 time_t lt1=time(NULL);
 newtime=localtime(&lt1);
 strftime( tmpbuf, 128, "Today is %A, day %d of %B in the year %Y.\n", newtime); 
 printf(tmpbuf);

 getchar();
 return 0;
}

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.