gpt4 book ai didi

c++ - 在 C++ 中使用 strptime 时出错

转载 作者:行者123 更新时间:2023-11-27 23:12:15 25 4
gpt4 key购买 nike

我试图理解 strptime() 在 C++ 中的使用并能够做到这一点,我写了一个简短的代码:

#include <time.h>
#include <iostream>
Test(string dtime)
{
string s = dtime;

struct tm timeDate;
strptime(s,"%y-%m-%d %H:%M", &timeDate);
cout<<timeDate.tm_sec<<endl;
}

dtime 总是像 2013:03:15 16:08。我得到了它说的错误:

Test(std::string)’:
Test.cpp:17:41: error: cannot convert ‘std::string* {aka std::basic_string<char>*}’ to ‘const char*’ for argument ‘1’ to ‘char* strptime(const char*, const char*, tm*)

有没有人帮我解决我的问题?提前致谢

最佳答案

strptime的声明是:

char *strptime(const char *s, const char *format, struct tm *tm);

第一个参数需要一个 const char *。您正在传递 std::string

s 转换为 C 风格的 char *

strptime(s.c_str(),"%y-%m-%d %H:%M", &timeDate);

关于c++ - 在 C++ 中使用 strptime 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19524016/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com