在Linux中设置系统时区

4

C语言中是否有设置Linux系统时间的函数?我还必须设置我的时区。换句话说,如果我的时区是IST,我能将其设置为UTC吗?


看一下 hwclock 的源代码。 - ymn
可能是重复的问题:在调用strftime之前如何设置时区? - devnull
3个回答

3
默认时区是由 /etc/localtime 的内容决定的,它被用于那些环境变量中没有 TZ 变量的进程。在 /usr/share/zoneinfo 中找到你需要的时区,然后将其复制或创建符号链接。
rm /etc/localtime
ln -s /usr/share/zoneinfo/Etc/GMT /etc/localtime

有一些交互式工具可以帮助您选择时区,但它们因发行版而异(例如Debian的dpkg-reconfigure tzdata)。


3
使用stime来设置时间,并使用tzset来设置时区。
请注意,settimeofdaytz(时区)参数已经废弃

1
您可以使用以下代码设置时区:

您可以通过使用此代码来设置时区


setenv("TZ", "PST8PDT", 1);
tzset();

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接