在')'令牌之前预期的主要表达式:c ++

时间:2012-05-13 14:31:21

标签: c++ qt

我是C / C ++的新手,我一直在使用python,我正在尝试获取当前时间并对其进行分区,但我在使用ctime获取当前时间时遇到问题。

float t2lmst(){
    QString t = ctime(time_t); //line with error
    QString year =t.substr(20,4);
    QString monthn =t.substr(4,3);
    QString day =t.substr(8,2);
    QString hour =t.substr(11,2);
    QString minute =t.substr(14,2);
    QString second =t.substr(17,2);
}

错误正是:

error: expected primary-expression before ')' token

1 个答案:

答案 0 :(得分:3)

您无法将类型传递给函数。您需要传递实际的对象/结构。 ctime指向time_t

time_t now = time(0);
QString t = ctime(&now);

此外QString没有substr成员函数。请查看mid和相关功能。或者使用localtime / gmtime。或者更好的是,使用Qt日期和时间对象。