永发信息网

使用C语言如何将一个时间数组转换为UTC时间

答案:4  悬赏:0  手机版
解决时间 2021-01-16 14:06
使用C语言如何将一个时间数组转换为UTC时间
最佳答案
应该是将时间结构体转为UTC时间。可以使用asctime函数。
1、asctime函数:
原型:char* asctime (const struct tm * timeptr);
功能:把timeptr指向的tm结构体中储存的时间转换为字符串;
头文件:time.h;
返回值:一个固定格式的字符串。字符串格式为:Www Mmm dd hh:mm:ss yyyy。其中Www为星期,Mmm为月份,dd为日,hh为时,mm为分,ss为秒,yyyy为年份。
2、例程:

#include
#include
int main(){
    time_t rawtime;
    struct tm * timeinfo;
    time(&rawtime);
    timeinfo = localtime(&rawtime);//使用localtime函数把秒数时间rawtime转换为本地时间以tm结构体保存,并把tm结构体地址储存到timeinfo当中
    printf("当前日期为: %s",asctime(timeinfo));//使用asctime函数把tm结构体中储存的时间转换为字符串,并输出
    return 0;
}
全部回答
123
UTC+8=北京时间
char days[]={0,31,28,31,30,31,30,31,31,30,31,30,31};
if((year%400==0)||((year%100!=0)&&(year%4==0))) // leap year
days[2]=29;
hour-=8;
if(hour<0)
{
hour+=24;
day--;
if(day<0)
{
month--;
if(month<0)
{
month=12;
year--;
}
day=days[month];
}
}
minute,seconds肯定是不变的...
typedef struct _SYSTEMTIME {
WORD wYear;
WORD wMonth;
WORD wDayOfWeek;
WORD wDay;
WORD wHour;
WORD wMinute;
WORD wSecond;
WORD wMilliseconds;
} SYSTEMTIME, *PSYSTEMTIME;

利用这个结构体吧,我猜想你的输入是一个二维数组,每一行是单个时间信息,对吧?
这样的话每一行依次读取,利用函数将字符转换成数字,写入SYSTEMTIME对应字段
然后将每个SYSTEMTIME实例组成一个数组就行了
利用filetimetosystime或者filetimetosystime,还可以方便的对时间进行计算
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
我看性教片请给个网址
索溪峪的野,野在哪里?为什么野?从那可以看
我国的基本国情:一是________,区域差异大;
古天乐携手两大影帝出演《明日战记》,耗资3
我想开家米线店!不知道干米线一般什么地方有
共给侧结构性改革的重点是不是创新发展理念
蛀牙已经被蛀的快没有了可以不拔牙直接安牙套
我的劳动没有白费,我感到很幸福。(改写双重
股票中短期支撑位和短期压力位是什么意思呀
柴火炖鱼如何做
成都17路公交车有哪些站
ZBlogPHP博客本地安装时,数据库名称填什么
美发行业的前景怎么样
毫不夸张怎么造句
杭州属于哪个省
推荐资讯
胚胎工程是一项综合性的动物繁育技术,可在畜
这种颜色配什么颜色外搭
单选题以下对各类能源的说法,正确的是A.我国
什么时候去上坟
哪里招收猪场产房主管?
有谁知道麦麸与动物粪便养蝇蛆哪个成本更低一
(4/3十23/2)Ⅹ8十23/7
“脱化”这个词错哪里了?
刘老师买了99本笔记本每本6.3元还买了一盒6.3
顶楼室内温度太低怎么办 顶楼把大山。有什么
煮肉增香粉
扁字加什么偏旁能变成另一个字并组词
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?