#include #include #include static void dump(const char *msg); int main(int argc, char **argv) { dump("Initially"); tzset(); dump("After tzset()"); if(setenv("TZ", argv[1], 1) < 0) { perror("setenv()"); return 1; } tzset(); dump("Set TZ"); if(unsetenv("TZ") < 0) { perror("unsetenv()"); return 1; } tzset(); dump("Unset TZ"); return 0; } static void dump(const char *msg) { printf("%s: TZ=", msg); const char *tz = getenv("TZ"); if(0 == tz) { printf(""); } else { printf("\"%s\"", tz); } printf(" tzname={\"%s\", \"%s\"}\n", tzname[0], tzname[1]); }