我是C品牌的新手,我仍然試圖瞭解它是如何工作的,任何幫助表示讚賞。 我正在通過一個代碼示例來打印出用戶屏幕上的當前本地時間。我已經評論了代碼,以幫助我瞭解正在發生的事情並對其工作原理有疑問。瞭解ctime代碼
#include <time.h>
#include <stdio.h>
#include <stdlib.h>
int main()
{
//define timeval as data type time_t
time_t timeval;
//Apply the time function, found in time.h, and use timeval as parameter
(void)time(&timeval);
//Use ctime, found in time.h, and use timeval as parameter
printf("The date is: %s", ctime(&timeval));
exit(0);
}
首先,我不是究竟是如何(void)time(&timeval)
作品清晰,尤其是去除(無效)似乎並不怎麼破解程序。從閱讀中,我的理解是,當函數沒有返回時使用void,但爲什麼這很重要?不知道爲什麼它被使用。另外,timeval的數據類型在程序開始時被聲明爲time_t,但是什麼是time函數可以在ctime函數使用它時使用它。
您是否閱讀過['time'](http://en.cppreference.com/w/c/chrono/time)或['ctime'](http://en.cppreference.com/) W/C /計時/的ctime)? –
將ctime()的返回值轉換爲(void)並沒有什麼意思。專注於編寫明智的代碼。 –
如果函數沒有返回值,則聲明爲「void」類型。 'time()'不是這樣寫的,因爲你可以接受返回值,或者使用傳遞的(更新的)參數,並且轉換(未使用的)返回值是毫無意義的。 'time()'返回自1970年1月1日午夜以來的秒數,'ctime()'將此值轉換爲可讀的時間和日期字符串。 –