当前位置: 技术问答>linux和unix
关于时间格式转换的问题!
来源: 互联网 发布时间:2015-07-06
本文导语: 时间的是字符串的格式,如下:2004-07-19 19:48:50 如果要转换成 time_t的格式,该如何操作?望高手指点,谢谢!! 我原来是将字符格式化读入到struct tm btime中,不过少了tm_wday,tm_yday,和tm_isdst,在编译过程中出...
时间的是字符串的格式,如下:2004-07-19 19:48:50
如果要转换成 time_t的格式,该如何操作?望高手指点,谢谢!!
我原来是将字符格式化读入到struct tm btime中,不过少了tm_wday,tm_yday,和tm_isdst,在编译过程中出现了段错误。
(gdb) n
206 btime->tm_year = b_year;
(gdb) n
207 btime->tm_mon = b_month;
(gdb) n
208 btime->tm_mday = b_day;
(gdb) n
209 btime->tm_hour = b_hour;
(gdb) n
210 btime->tm_min = b_minute;
(gdb) n
211 btime->tm_sec = b_second;
(gdb) n
213 etime->tm_year = e_year;
(gdb) n
214 etime->tm_mon = e_month;
(gdb) n
215 etime->tm_mday = e_day;
(gdb) n
216 etime->tm_hour = e_hour;
(gdb) n
217 etime->tm_min = e_minute;
(gdb) n
218 etime->tm_sec = e_second;
(gdb) n
220 BeginTime = mktime(btime);
(gdb) display btime
1: btime = (struct tm *) 0x400163e8
(gdb) display BeginTime
2: BeginTime = -1073743600
(gdb) n
Program received signal SIGSEGV, Segmentation fault.
0x40007aa0 in _dl_lookup_symbol_internal () from /lib/ld-linux.so.2
如果要转换成 time_t的格式,该如何操作?望高手指点,谢谢!!
我原来是将字符格式化读入到struct tm btime中,不过少了tm_wday,tm_yday,和tm_isdst,在编译过程中出现了段错误。
(gdb) n
206 btime->tm_year = b_year;
(gdb) n
207 btime->tm_mon = b_month;
(gdb) n
208 btime->tm_mday = b_day;
(gdb) n
209 btime->tm_hour = b_hour;
(gdb) n
210 btime->tm_min = b_minute;
(gdb) n
211 btime->tm_sec = b_second;
(gdb) n
213 etime->tm_year = e_year;
(gdb) n
214 etime->tm_mon = e_month;
(gdb) n
215 etime->tm_mday = e_day;
(gdb) n
216 etime->tm_hour = e_hour;
(gdb) n
217 etime->tm_min = e_minute;
(gdb) n
218 etime->tm_sec = e_second;
(gdb) n
220 BeginTime = mktime(btime);
(gdb) display btime
1: btime = (struct tm *) 0x400163e8
(gdb) display BeginTime
2: BeginTime = -1073743600
(gdb) n
Program received signal SIGSEGV, Segmentation fault.
0x40007aa0 in _dl_lookup_symbol_internal () from /lib/ld-linux.so.2
|
tm_year
The number of years since 1900.
tm_mon The number of months since January, in the range 0
to 11.
tm_mday
The day of the month, in the range 1 to 31.
*btime里数据不对啊。
The number of years since 1900.
tm_mon The number of months since January, in the range 0
to 11.
tm_mday
The day of the month, in the range 1 to 31.
*btime里数据不对啊。
|
strftime 很好用, 你可以查一查