【发布时间】:2015-07-27 01:27:20
【问题描述】:
我想分别获取时间和日期以将其放入数组中。我希望调用函数类似于int date(int Day,int Month,int Year),但它不正确。如何定义函数的参数 Year Month Day 和 Hour min sec 以使用它们?
using namespace std;
int date() {
time_t currentTime;
struct tm *localTime;
time(¤tTime);
localTime = localtime(¤tTime);
int Day = localTime->tm_mday;
int Month = localTime->tm_mon + 1;
int Year = localTime->tm_year + 1900;
return (0);
}
int time() {
time_t currentTime;
struct tm *localTime;
time(¤tTime);
localTime = localtime(¤tTime);
int Hour = localTime->tm_hour;
int Min = localTime->tm_min;
int Sec = localTime->tm_sec;
return (0);
}
int main() {
unsigned int new_date=date();
char write[4];
memcpy(write,&new_date,4);
unsigned int new_time=time();
char wrt[4];
memcpy(wrt,&new_time,4);
}
【问题讨论】:
-
你明白
date()和time()都返回0吗? -
是的,我想改变它,但我不知道怎么做??
-
嗯,从目前的角度来看,这太宽泛了。首先,选择一种语言。
C和C++并不完全一样。 -
与您的问题无关,但如果您想像这样
memcpy(),如果您希望它保持便携性,您应该使用sizeof(unsigned int)而不是4。
标签: c++ datetime argument-passing