我正在接收“24-9-2016 13:30”格式的日期结构。现在我想将时间值转换为特定的日期值,我正在进行计算,并有几个小时来添加或减少。想要使用struct tm执行日期/时间值操作
所以我不知道:
- 我怎么能初始化tm结构与日期值我有吗?
- 如何在tc结构变量中添加或减去小时以获取所需日期?
我的意图是获得
日期 “24-9-2016 13时30分” 和5小时添加
所以最终的日期: “24-9-2016 18点半”
//Temporarily init time to local
time_t tempTime
time(&tempTime);
struct tm *initStruct = localtime(&tempTime);//initialize it with local time
//now modify it to user defined date
initStruct ->tm_year = 2016;
initStruct->tm_mon = 9;
initStruct->tm_hour = 13;
.
.
.
//Not sure how can I subtract or add hours in this struct to get desired date value
这是关于格式化用户定义不是重复。
可能的重复[如何计算IANA时区名称在C中的UTC偏移](http://stackoverflow.com/questions/26845638/how-to-calculate-utc-offset-from-iana-timezone-name- in-c) –
如果您想要一个工业级解决方案,请访问以下网址:http://userguide.icu-project.org/datetime/timezone/examples - libicu是C中标准方式,用于在任意时区之间转换时间。 –
不是真的,日期来自用户,需要执行额外的步骤,主要的是我怎么可以添加或减去一个struct tm。 – user987316