LocalTimeは地域の時刻
ローカライズされた時刻だからな

time_t aho1 = time();
time_t aho2 = aho1 + 9 * 60 * 60;

A) struct tm* pt = localtime(&aho1)
B) struct tm* pt = gmtime(&aho2)

きっと知恵遅れのオツムではコレが同じになることが理解できない