What about sscanf?
struct tm tmVar;char *strVar = "YYYY-MM-DD HH:MM:SS";time_t timeVar;if(sscanf(strVar, "%d-%d-%d %d:%d:%d", &tm.tm_year, /* the other fields */)==6) timeVar = mktime(&tmVar);else // bad format
What about sscanf?
struct tm tmVar;char *strVar = "YYYY-MM-DD HH:MM:SS";time_t timeVar;if(sscanf(strVar, "%d-%d-%d %d:%d:%d", &tm.tm_year, /* the other fields */)==6) timeVar = mktime(&tmVar);else // bad format