zoukankan      html  css  js  c++  java
  • time函数及相关

     1 #include <cstdlib>
     2 #include <iostream>
     3 #include <ctime>
     4 
     5 using namespace std;
     6 
     7 int main( int argc, char *argv[]);
     8 void timestamp( void);
     9 
    10 int main( int argc, char *argv[])
    11 // argv : a pointer ( point to an array ( array stores pointers))
    12 {
    13     int i;
    14     bool VERBOSE = true;
    15     
    16     if( VERBOSE)
    17     {
    18         timestamp();
    19         
    20         cout << "\n";
    21         cout << "ARGS\n";
    22         cout << " C++ version\n";
    23         cout <<"\n";
    24         cout << " Compiled on " << __DATE__ << "at" << __TIME__ << ".\n"; //显示编译时的时间
    25         cout << __FILE__ <<endl;
    26         cout << "\n";
    27         cout << " Print the commond line arguments of a C++ program.\n";
    28         cout << "\n";
    29         cout << " ARGC reports the number of arguments as " << argc << ".\n";
    30         cout << "\n";
    31     }
    32 
    33     for( i = 0; i < argc; ++i)
    34     {
    35         cout << i << " " << *argv << "\n";
    36         argv++;
    37     }
    38 
    39     if( VERBOSE)
    40     {
    41         cout << "\n";
    42         cout << "ARGS:\n";
    43         cout << "Normal end of execution.\n";
    44         cout << "\n";
    45         timestamp();
    46     }
    47 
    48     return 0;
    49 
    50 }
    51 
    52 void timestamp( void)
    53 {
    54 #define TIME_SIZE 40   // tips : 局部的宏定义
    55     static char time_buffer[TIME_SIZE];
    56     const struct tm *tm; // time 的结构体,包含时间的信息。
    57     size_t len;
    58     time_t now;  //就是int64变量
    59 
    60     now = time( NULL); // 形成时间的信息,存储在now中
    61     tm = localtime( &now); // 将now中的信息转换到tm中
    62     len = strftime( time_buffer, TIME_SIZE, "%d %B %Y %I:%M:%S %p", tm); // 将tm中的信息转到time_buffer中,
    63     cout << time_buffer << "\n"; // 在字符串中显示。
    64     return ;
    65 # undef TIME_SIZE
    66 }

    学习到的东西:编译器预定义到的宏。http://blog.csdn.net/the__blue__sky/article/details/8921488  http://blog.csdn.net/q191201771/article/details/6092891

    再次理解main函数的参数“ char *argv[]",argv[]是个数组,数组里面存储的是char* 指针,即数组里面的内容是指针。

    // wchar.h 中
    struct tm {
            int tm_sec;     /* seconds after the minute - [0,59] */
            int tm_min;     /* minutes after the hour - [0,59] */
            int tm_hour;    /* hours since midnight - [0,23] */
            int tm_mday;    /* day of the month - [1,31] */
            int tm_mon;     /* months since January - [0,11] */
            int tm_year;    /* years since 1900 */
            int tm_wday;    /* days since Sunday - [0,6] */
            int tm_yday;    /* days since January 1 - [0,365] */
            int tm_isdst;   /* daylight savings time flag */
            };

    time()获得时间信息;localtime()转换信息为时间表示的形式;strftime()将时间转换为字符串的形式,便于输出。

    原型:time_t time( time_t* timer)  The value returned generally represents the number of seconds since 00:00 hours, Jan 1, 1970 UTC.  将返回的值返回到timer里面。如果timer是NULL 则返回就完了。

    源代码来源:http://people.sc.fsu.edu/~jburkardt/cpp_src/args/args.cpp

    ctime:http://www.cplusplus.com/reference/ctime/

  • 相关阅读:
    前端如何进阶架构师
    NPOI使用记录
    ArcGis 中空间数据的插入与更新
    (转载).net 缓存处理
    ASP.NET(c#)实现重定向的三种方法的总结
    数据库关联表之间的更新语句
    C#net多线程多文件压缩下载
    关于写文件流的情况
    C# Class获取项目的绝对路径
    C# .net中DatailsView的JS简易版
  • 原文地址:https://www.cnblogs.com/jiangyoumiemie/p/3116038.html
Copyright © 2011-2022 走看看