簡體   English   中英

如何用C語言-Loadrunner Web區分兩個日期時間?

[英]How to differentiate between two Date Time in C language -Loadrunner Web?

我試圖使用下面的代碼找到兩個日期(即14:49:41和15:50:42)之間的區別:

    Action()
{
    struct tm { 
    int tm_sec; 
    int tm_min; 
    int tm_hour; 
  }; 

  int rc; // return code
  struct tm date1;
  struct tm date2;
  long time_difference; // the number of time ticks (seconds) that separate date1 and date2.
  int hours, minutes, seconds;

  // Save example dates to a parameter. 
  // capture these values using web_reg_save_param or similar.
  // date format: hh:mm:ss
  lr_save_string("14:49:41", "Param_Date1");
  lr_save_string("15:50:42", "Param_Date2");

  // Read the values from the string into the date variables
  rc = sscanf(lr_eval_string("{Param_Date1}"), "%d:%d:%d",&date1.tm_hour, &date1.tm_min, &date1.tm_sec);


  // Repeat the above steps for Date2
  rc = sscanf(lr_eval_string("{Param_Date2}"), "%d:%d:%d", &date2.tm_hour, &date2.tm_min, &date2.tm_sec);




  time_difference = mktime(&date2) - mktime(&date1);
  lr_output_message("Total number of seconds difference: %d", time_difference);

  // Calculate time difference in  hours, minutes and seconds.

  hours = time_difference/3600;
  time_difference = time_difference - (hours * 3600);
  minutes = time_difference/60;
  time_difference = time_difference - (minutes * 60);
  seconds = time_difference;
  lr_output_message("Hours: %d, Minutes: %d, Seconds: %d", hours, minutes, seconds);

    return 0;
}

實際輸出應返回:小時:1,分鍾:1,秒:1
但是輸出返回:小時:0,分鍾:0,秒:0

請幫助我解決此問題。 還是其他任何替代方法都能實現?

將值除以3600時,不應將小時,分鍾和秒聲明為整數。如果將它們聲明為浮點數,則可能會起作用。 除此之外,一切看起來都不錯

幾秒鍾之間的時間差很容易計算:

int secs1 = ((time1.hour * 60) + time1.min) * 60 + time1.sec;
int secs1 = ((time2.hour * 60) + time2.min) * 60 + time2.sec;
int sec_dif = secs1 - secs2;

或者這樣:

int sec_dif =
    ((time1.hour - time2.hour) * 60 + (time1.min - time2.min)) * 60 + (time1.min - time2.min);

int min_dif = sec_dif / 60;
int hour_dif = sec_dif / (60 * 60);

無需費心將時間轉換為time_t類型。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM