OSx でローカル タイムゾーンを使用して struct tm を作成しようとしています。
#import <time.h>
#import <xlocale.h>//This is here because I was trying strptime_l
int main(int argc, const char * argv[])
{
struct tm start;
memset(&start, 0, sizeof(struct tm));
const char *formatString = "%m/%d/%Y %R";
(void) strptime("7/15/2013 16:00", formatString, &start);//Mon Jul 15 @ 4pm EST
printf("%s\n", start.tm_zone); //prints null
if (!start.tm_zone) {
time_t now;
time(&now);
printf("%s\n", localtime(&now)->tm_zone);//But I have the right timezone here.
}
return 0;
}
OSxのドキュメントによると:
strptime() 関数は現在のロケールを使用しますが、strptime_l() 関数はロケールを直接渡すことができます。詳細については、xlocale(3) を参照してください。
私の最終目標は、NSDate オブジェクトを作成できるようにして、最終的に iPhone でカレンダー イベントを作成できるようにすることです。