zoukankan      html  css  js  c++  java
  • C获取本地时间的localtime函数

    最近有朋友问如下问题:

    #include <stdio.h>
    #include <stdlib.h>
    #include <iconv.h>
    #include <time.h>

    int main()
    {
    struct tm *tms;
    time_t now = time(0);
    tms = localtime(&now);

    printf("%d/n", tms->tm_year);
    printf("%d/n", tms->tm_mon);
    printf("%d/n", tms->tm_mday);
    printf("%d/n", tms->tm_hour);
    printf("%d/n", tms->tm_min);
    printf("%d/n", tms->tm_sec);
    }为什么输出的年是110,不是2010?输出的月不是8月而是7月?

    这个问题在MSDN上解释的很清楚了,我不用罗嗦了,直接拿出证据吧。

    Return Value

    localtime returns a pointer to the structure result. If the value in timer represents a date before midnight, January 1, 1970, localtime returns NULL. The fields of the structure type tm store the following values, each of which is an int:

    tm_sec

    Seconds after minute (0 – 59)

    tm_min

    Minutes after hour (0 – 59)

    tm_hour

    Hours after midnight (0 – 23)

    tm_mday

    Day of month (1 – 31)

    tm_mon

    Month (0 – 11; January = 0)     //请注意这里

    tm_year

    Year (current year minus 1900) //还要注意这里

    tm_wday

    Day of week (0 – 6; Sunday = 0)

    tm_yday

    Day of year (0 – 365; January 1 = 0)

    tm_isdst

    Positive value if daylight saving time is in effect; 0 if daylight saving time is not in effect; negative value if status of daylight saving time is unknown. The C run-time library assumes the United States’s rules for implementing the calculation of Daylight Saving Time (DST).

    Parameter

    timer

    Pointer to stored time

    Remarks

    The localtime function converts a time stored as a time_t value and stores the result in a structure of type tm. The long value timer represents the seconds elapsed since midnight (00:00:00), January 1, 1970, coordinated universal time (UTC). This value is usually obtained from the time function.

    gmtimemktime, and localtime all use a single statically allocated tm structure for the conversion. Each call to one of these routines destroys the result of the previous call.

    localtime corrects for the local time zone if the user first sets the global environment variable TZ. When TZ is set, three other environment variables (_timezone_daylight, and _tzname) are automatically set as well. See_tzset for a description of these variables. TZ is a Microsoft extension and not part of the ANSI standard definition of localtime.

    Note   The target environment should try to determine whether daylight saving time is in effect.

    Example

    http://blog.csdn.net/yiruirui0507/article/details/5841837

  • 相关阅读:
    HLJU 1221: 高考签到题 (三分求极值)
    [视频解说]Java(JDK的下载安装及第一个程序执行)
    llvm中如何利用分支概率和基本块频率估计
    Nginx SSL TLS部署最佳实践
    Nginx使用教程(一):Nginx编译参数详解
    Nginx使用教程(一):下载并编译安装Nginx
    nginx使用ssl模块配置HTTPS支持
    Linux下安装Tomcat服务器和部署Web应用
    TOMCAT-报错The BASEDIR environment variable is not defined correctly
    Kafka vs RocketMQ——多Topic对性能稳定性的影响-转自阿里中间件
  • 原文地址:https://www.cnblogs.com/findumars/p/5811318.html
Copyright © 2011-2022 走看看