我正在嘗試創建一個簡單的輸入來模擬實時時鐘值。我希望代碼所做的是計算兩個tm結構之間的時間差(Time1Start和Time1End)。 month, day, year, etc
並不重要,因爲這些計算是假定在同一天完成的。
我認爲假設小時和分鐘是在1900年的第一天,因爲它尚未初始化,這是正確的。tm struct和MPLABX x8編譯器
一旦我嘗試操作任何一個結構,我就會收到警告和一些錯誤。代碼如下:
#include <time.h>
struct tm Time1Start;
Time1Start.tm_hour = 0; //start of day - errors start here (line 38)
Time1Start.tm_min = 0;
struct tm Time1End;
Time1End.tm_hour = 17; //5:XX o'clock
Time1End.tm_min = 30; //5:30
double seconds;
double minutes;
seconds = difftime(mktime(Time1Start), mktime(Time1End));
minutes = seconds/60;
我收到的錯誤是:
build.h:38: warning: (374) missing basic type; int assumed
build.h:38: error: (984) type redeclared
build.h:38: error: (1098) conflicting declarations for variable "Time1Start" (build.h:37)
我在MPLAB X IDE v3.30
使用X8 compiler
運行。
請幫忙
假設這是'build.h',(參見[mcve])爲什麼要在函數外實例化變量?請注意,不允許調用函數外部的函數。 – KevinDTimm
函數作用域內的發佈代碼是什麼? – LPs
請提供[mcve]。顯示的代碼片段不能編譯。 – Olaf