我想按照时区来获取时间。 印度的偏移值是5:30所以我使用“时间”功能增加了5小时30分钟。 但最终答案总是给出1小时的偏差。为什么?我该如何纠正呢?
#include <iostream>
#include <ctime>
int main() {
time_t tNow;
time(&tNow);
struct tm *now = localtime(&tNow);
cout<<asctime(now)<<endl;
// for Indian time (GMT 5:30) adding 5 to hour and 30 to min
cout<< (now->tm_hour +5)%24 <<" "<< (now->tm_min +30)%60 <<" "<< now->tm_sec +0<< endl;
}
我应该采取哪些措施来纠正这个问题?