博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C++与C#的时间转换
阅读量:4350 次
发布时间:2019-06-07

本文共 1838 字,大约阅读时间需要 6 分钟。

1.C++中的时间:

(1) time_t其实是一个64位的long int类型
(2) time函数:
函数简介:
  函数名:  time   
    头文件:  time.h   
    函数原型:time_t time(time_t *timer)   
    功能: 获取当前的系统时间,返回的结果是一个time_t类型,其实就是一个大整数,其值表示从CUT(Coordinated Universal Time)时间1970年1月1日00:00:00(称为UNIX系统的Epoch时间)到当前时刻的秒数,然后调用localtime将time_t所表示的CUT时间转换为本地时间(我们是+8区,比CUT多8个小时)并转成struct tm类型,分别表该类型的各数据成员示年月日时分秒。
显示系统当前时间:

int main() {     time_t ltime;     time(&ltime);     cout<

ctime函数:

   char *ctime(const time_t *timer);
   timer:time_t类型指针
   返回值:格式为“星期 月 日 小时:分:秒 年\n\0”的字符串

localtime函数:(gmtime函数与之类似)
   struct tm *localtime(const time_t *timer);
   timer:time_t类型指针
   返回值:以tm结构表示的时间指针

asctime函数:
   char *asctime(const struct tm *timeptr);
   timeptr:结构tm指针
   返回值:格式为“星期 月 日 小时:分:秒 年\n\0”的字符串
例:

#include
   #include
   #include
   int main(void)    {
time_t timer; //time_t就是long int 类型 struct tm *tblock; timer = time(NULL);//这一句也可以改成time(&timer); tblock = localtime(&timer); printf("Local time is: %s\n",asctime(tblock)); return 0;    }

 

2.将C++中time_t类型转换成C#中的DateTime类型:

//time_t是世界时间, 比 本地时间 少8小时(即28800秒)  double seconds = 1259666013 + 28800;  double secs = Convert.ToDouble(seconds);  DateTime dt = new DateTime(  1970, 1, 1, 0, 0, 0, DateTimeKind.Unspecified).AddSeconds(secs);  //TimeSpan span =  //        TimeSpan.FromTicks(seconds*TimeSpan.TicksPerSecond);   Console.WriteLine(dt);

 

3.将C#的DateTime类型转换成C++的time_t类型

public static long DateTimeToTime_t(DateTime dateTime) {
long time_t; DateTime dt1 = new DateTime(1970, 1, 1,0,0,0); TimeSpan ts =dateTime - dt1; time_t = ts.Ticks/10000000-28800; return time_t; } static void Main(string[] args) {
DateTime dateTime = new DateTime(2009,12,1,19,13,33); Console.WriteLine(DateTimeToTime_t(dateTime)); }

 

转载于:https://www.cnblogs.com/zjoch/p/5999336.html

你可能感兴趣的文章
java基础:数组的拼接
查看>>
vue生命周期理解
查看>>
oracle alter
查看>>
06计算列
查看>>
嵌入式成长轨迹62【智能家居项目】【ARM 飞凌ok6410】【QT&QWT&sqlite3安装配置】...
查看>>
实验五
查看>>
STL学习笔记(第二章 C++及其标准程序库简介)
查看>>
类方法的声明和实现
查看>>
Operator_countByValue
查看>>
Java 日期往后推迟n天
查看>>
Web应用漏洞评估工具Paros
查看>>
Git 和 Github 使用指南
查看>>
20180925-4 单元测试
查看>>
HTML入门1—HTML基础学习
查看>>
在vs2005中使用SVN进行版本管理
查看>>
实现类似百度文库效果,防止用户下载。
查看>>
mysql的数据存储
查看>>
[转载] Activiti Tenant Id 字段释疑
查看>>
[Java 8] (8) Lambda表达式对递归的优化(上) - 使用尾递归 .
查看>>
SQL Server-聚焦移除Bookmark Lookup、RID Lookup、Key Lookup提高SQL查询性能
查看>>