| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2899 人关注过本帖
标题:如何把编译时间写入程序
只看楼主 加入收藏
纯蓝之刃
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:76
帖 子:565
专家分:3690
注 册:2019-7-29
结帖率:93.75%
收藏
 问题点数:0 回复次数:12 
如何把编译时间写入程序
使用makefile编译程序,如何将当前编译时间自动存储到编译的程序中?
也就是如何在使用程序的时候可以看到程序的编译时间
搜索更多相关主题的帖子: 编译 存储 自动 时间 写入 
2021-01-04 13:55
Knocker
Rank: 8Rank: 8
等 级:贵宾
威 望:47
帖 子:10454
专家分:603
注 册:2004-6-1
收藏
得分:0 
__TIME__
__DATE__

九洲方除百尺冰,映秀又遭蛮牛耕。汽笛嘶鸣国旗半,哀伤尽处是重生。     -老K
治国就是治吏。礼义廉耻,国之四维。四维不张,国之不国。   -毛泽东
2021-01-16 10:41
纯蓝之刃
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:76
帖 子:565
专家分:3690
注 册:2019-7-29
收藏
得分:0 
我想在程序编译的时候就把程序编译的时间写到程序里,之后就不变了。而不是得到打开程序的时间。
最简单的例子就是如果使用sftp传输文件,得到的文件的日期会变成最新的。我的目的就是虽然新传输文件的日期变了,但程序里还是保留着程序生成时候的日期,并且能够通过字符串等手段得到。

一沙一世界,一花一天堂。无限掌中置,刹那成永恒。
2021-01-16 16:10
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9007
专家分:53942
注 册:2011-1-18
收藏
得分:0 
__TIME__、__DATE__ 并不是makefile的,是C/C++的。
它是一个宏,指示编译时的时间,符合你的要求。

程序代码:
#include <stdio.h>

int main( void )
{
    printf( "%s, %s\n", __DATE__, __TIME__ );
}


一个可能的输出是
Jan 16 2021, 22:38:20

只要你不重现编译,那么它就不会变。
2021-01-16 21:41
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9007
专家分:53942
注 册:2011-1-18
收藏
得分:0 
https://zh.
2021-01-16 21:59
zbjzbj
Rank: 12Rank: 12Rank: 12
来 自:郑州
等 级:贵宾
威 望:52
帖 子:633
专家分:3045
注 册:2011-4-22
收藏
得分:0 
回复 3楼 纯蓝之刃
用c++方便些,把你的数据以资源的方式编译进exe文件,可以自定义资源格式。
2021-01-16 22:13
yuma
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:银河系
等 级:贵宾
威 望:37
帖 子:1921
专家分:2981
注 册:2009-12-22
收藏
得分:0 
不用写进去,好像所有的exe文件都有编译时间。
GMT-格林尼治标准时,北京时间减去8小时。
图片附件: 游客没有浏览图片的权限,请 登录注册

用这个软件查看:
PE Explorer V1.99.6.1400 特别版单文件版.zip (1.52 MB)


[此贴子已经被作者于2021-1-18 09:13编辑过]


心生万象,万象皆程序!
本人计算机知识网:http://bbs.为防伸手党,本站已停止会员注册。
2021-01-17 19:27
hytc01
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2021-1-17
收藏
得分:0 
楼上正解,PE格式里自带。
2021-01-17 22:45
yuma
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:银河系
等 级:贵宾
威 望:37
帖 子:1921
专家分:2981
注 册:2009-12-22
收藏
得分:0 
EXE中自带的编译时间,都是UTC 格林威治时间。

格林威治标准时间(GMT)
地区:英国 皇家格林尼治天文台
时区:UTC/GMT 0 (零时区)
北京时差:现在格林威治时间比北京时间晚8小时
格林威治位于泰晤士河南岸,与北岸城镇通隧道和公路。1423年格洛斯特公爵亨天雷围建了格林尼治公园,在河畔山丘建了镃望塔,后又建造了格林威治皇家天文台。
协调世界时(UTC)
UTC协调世界时即格林威治平太阳时间,是指格林威治所在地的标准时间,也是表示地球自转速率的一种形式,UTC基于国际原子时间。

心生万象,万象皆程序!
本人计算机知识网:http://bbs.为防伸手党,本站已停止会员注册。
2021-01-18 17:25
纯蓝之刃
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:76
帖 子:565
专家分:3690
注 册:2019-7-29
收藏
得分:0 
回复 7楼 yuma
如果使用ssh在linux和windows互传,得到的时间就是你传输后生成文件的时间,而不是程序原本生成的时间。

一沙一世界,一花一天堂。无限掌中置,刹那成永恒。
2021-01-20 11:47
快速回复:如何把编译时间写入程序
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016282 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved