一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - C/C++ - C++如何獲取當前系統時間及格式化輸出

C++如何獲取當前系統時間及格式化輸出

2021-08-19 15:49小朋友學開發 C/C++

這篇文章主要介紹了C++如何獲取當前系統時間及格式化輸出的實例代碼,主要用到time()及strftime()函數,通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下

本文主要使用time() 及strftime() 函數實現c++獲取系統時間。

C++系統和時間相關的函數基本上都是使用C語言提供的標準接口

在程序中獲取系統時間是常見的操作,很多情況下使用系統提供的time函數即可獲取。

time() 是系統C語言的標準接口,通過man time 或者man 2 time 可查看詳細的使用方法。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
include <time.h>
include <stdio.h>
int main()
{
time_t tt = time(NULL);
tm* t=localtime(&tt);
printf("%d-%02d-%02d %02d:%02d:%02d\n",
t->tm_year + 1900,
t->tm_mon + 1,
t->tm_mday,
t->tm_hour,
t->tm_min,
t->tm_sec);
}

將文件保存為timetest.cpp,在linux下使用g++命令編譯:

g++timetest.cpp

成功會生成a.out,執行命令即可看到輸出:

./a.out

這是最常用的方法,當然另外還有其它函數可使用,可參考以下函數,這里不在詳述。

date(1),gettimeofday(2), ctime(3), ftime(3), time(7)

時間字符串處理

用上面的time函數獲取時間后返回的是tm 的結構體,通常我們需要轉換為字符串的方式使用。

這時strftime可派上用場,這個函數常用來格式化時間和日期。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <time.h>
#include <stdio.h>
#include <stdlib.h>
int
main(int argc, char
argv[])
{
char outstr[200];
time_t t;
tmp;
t =time(NULL);
tmp =localtime(&t);
if (tmp == NULL) {
perror("localtime");
exit(EXIT_FAILURE);
}
if (strftime(outstr, sizeof(outstr), argv[1], tmp) == 0) {
fprintf(stderr, "strftime returned0");
exit(EXIT_FAILURE);
}
printf("Result string is "%s"\n", outstr);
exit(EXIT_SUCCESS);
} /* main */

使用方法同上編譯,運行時出入時間格式:

?
1
2
3
4
5
6
$ ./a.out '%m'
   Result string is "11"
    $./a.out '%5m'
   Result string is "00011"
    $./a.out '%_5m'
   Result string is "  11"

strftime支持多種日期時間格式,詳細如下,需要注意大小寫哦:

%a 星期幾的簡寫

%A 星期幾的全稱

%b 月分的簡寫

%B 月份的全稱

%c 標準的日期的時間串

%C 年份的后兩位數字

%d 十進制表示的每月的第幾天

%D 月/天/年

%e 在兩字符域中,十進制表示的每月的第幾天

%F 年-月-日

%g 年份的后兩位數字,使用基于周的年

%G 年分,使用基于周的年

%h 簡寫的月份名

%H 24小時制的小時

%I 12小時制的小時

%j 十進制表示的每年的第幾天

%m 十進制表示的月份

%M 十時制表示的分鐘數

%n 新行符

%p 本地的AM或PM的等價顯示

%r 12小時的時間

%R 顯示小時和分鐘:hh:mm

%S 十進制的秒數

%t 水平制表符

%T 顯示時分秒:hh:mm:ss

%u 每周的第幾天,星期一為第一天 (值從0到6,星期一為0)

%U 第年的第幾周,把星期日做為第一天(值從0到53)

%V 每年的第幾周,使用基于周的年

%w 十進制表示的星期幾(值從0到6,星期天為0)

%W 每年的第幾周,把星期一做為第一天(值從0到53)

%x 標準的日期串

%X 標準的時間串

%y 不帶世紀的十進制年份(值從0到99)

%Y 帶世紀部分的十制年份

%z,%Z 時區名稱,如果不能得到時區名稱則返回空字符。

%% 百分號

下面在看段代碼c++獲取當前系統時間并格式化輸出

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <string>
#include <time.h>
using namespace std;
string getTime()
{
  time_t timep;
  time (&timep);
  char tmp[64];
  strftime(tmp, sizeof(tmp), "%Y-%m-%d %H:%M:%S",localtime(&timep) );
  return tmp;
}
int main(){
  string  time = getTime();
  cout << time << endl;
  return 0;
}

總結

到此這篇關于C++如何獲取當前系統時間及格式化輸出的文章就介紹到這了,更多相關c++ 獲取系統時間內容請搜索服務器之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持服務器之家!

原文鏈接:https://www.cnblogs.com/cppentry/p/12364644.html

延伸 · 閱讀

精彩推薦
  • C/C++C語言實現電腦關機程序

    C語言實現電腦關機程序

    這篇文章主要為大家詳細介紹了C語言實現電腦關機程序,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    xiaocaidayong8482021-08-20
  • C/C++詳解c語言中的 strcpy和strncpy字符串函數使用

    詳解c語言中的 strcpy和strncpy字符串函數使用

    strcpy 和strcnpy函數是字符串復制函數。接下來通過本文給大家介紹c語言中的strcpy和strncpy字符串函數使用,感興趣的朋友跟隨小編要求看看吧...

    spring-go5642021-07-02
  • C/C++C語言中炫酷的文件操作實例詳解

    C語言中炫酷的文件操作實例詳解

    內存中的數據都是暫時的,當程序結束時,它們都將丟失,為了永久性的保存大量的數據,C語言提供了對文件的操作,這篇文章主要給大家介紹了關于C語言中文件...

    針眼_6702022-01-24
  • C/C++深入理解goto語句的替代實現方式分析

    深入理解goto語句的替代實現方式分析

    本篇文章是對goto語句的替代實現方式進行了詳細的分析介紹,需要的朋友參考下...

    C語言教程網7342020-12-03
  • C/C++學習C++編程的必備軟件

    學習C++編程的必備軟件

    本文給大家分享的是作者在學習使用C++進行編程的時候所用到的一些常用的軟件,這里推薦給大家...

    謝恩銘10102021-05-08
  • C/C++c++ 單線程實現同時監聽多個端口

    c++ 單線程實現同時監聽多個端口

    這篇文章主要介紹了c++ 單線程實現同時監聽多個端口的方法,幫助大家更好的理解和學習使用c++,感興趣的朋友可以了解下...

    源之緣11542021-10-27
  • C/C++C/C++經典實例之模擬計算器示例代碼

    C/C++經典實例之模擬計算器示例代碼

    最近在看到的一個需求,本以為比較簡單,但花了不少時間,所以下面這篇文章主要給大家介紹了關于C/C++經典實例之模擬計算器的相關資料,文中通過示...

    jia150610152021-06-07
  • C/C++C++之重載 重定義與重寫用法詳解

    C++之重載 重定義與重寫用法詳解

    這篇文章主要介紹了C++之重載 重定義與重寫用法詳解,本篇文章通過簡要的案例,講解了該項技術的了解與使用,以下就是詳細內容,需要的朋友可以參考下...

    青山的青6062022-01-04
主站蜘蛛池模板: 无码天堂亚洲国产AV久久 | 99热在线获取最新地址 | 午夜福利电影网站鲁片大全 | 亚洲精品有码在线观看 | 国产精品青青青高清在线观看 | 97在线资源站 | bnb99八度免费影院 | 亚洲精品乱码久久久久久蜜桃图片 | 午夜理伦片免费 | 99热免费在线 | 黄情视频 | 精品国产一区二区三区久久久蜜臀 | 国产色视频网站 | 日本海鸣馆| 美国一级大黄大色毛片 | xxxx意大利xxxxhd| b站免费| 草留色区| 国产精品俺来也在线观看了 | 失禁尿丝袜vk | 欧美黑人一级 | 暖暖的视频完整视频韩国免费 | 欧美一区二区三区在线观看免费 | 国产精品怡红院在线观看 | 天天色综合三 | 日本黄色大片免费观看 | 999久久精品国产 | 欧美日韩精品一区二区三区视频播放 | 午夜亚洲国产 | 18videossex性欧美69 | 国产精品最新资源网 | 天天躁天天碰天天看 | 久久伊人影视 | 美国videos | 欧美一二 | 国产精品污双胞胎在线观看 | 我把校花黑色蕾丝胸罩脱了 | 东北恋哥在线播放免费播放 | blacked黑人| 国产精品永久免费视频观看 | 国产麻豆成91 |