用分隔符"/"标记字符串

Ger*_*nis -2 c++ tokenize c++11

大家好我正面临一个问题,因为我无法想出一个方法,它将采用一个字符串(实际上是日期/月/年形式的日期)作为参数,并在矢量或数组中对其进行标记.有人可以帮忙吗?我知道有很多关于此的主题,但我找不到任何不包括boost的解决方案(我不想使用).

Jer*_*fin 6

如果你想解析一个日期,明显的起点是std::get_time:

struct tm t;

std::cin >> std::get_time(&t, "%d/%m/%Y");
Run Code Online (Sandbox Code Playgroud)

这将结果放入struct tm而不是向量.通过这种方式,您可以访问该月的某一天(例如),t.tm_mday而不是尝试记住那x[1]一天,x[2]而是一年(或其他).

您还可以获得相当多的其他例程,这些例程知道如何以这种格式操作日期/时间,以及mktime可以将其转换为a time_t(为此提供了一些更有用的例程).