尝试使用 std::get_time 或 strftime 解析字符串时在 Raspi 上接收 SIGABRT

问题描述 投票:0回答:0

当我使用 std::get_time 或 strftime 解析字符串时,我在我的 RaspberryPi 上收到了一个 SIGABRT。当我在我的 Ubuntu 计算机上执行相同的代码时,它工作正常。

std::get_time 示例:

#include <chrono>
#include <iomanip>
#include <iostream>

int main() {
    std::stringstream stream;
    stream.str("09:35:44,02-23-2023");
    std::tm tm{};
    const std::string format = "%H:%M:%S,%m-%d-%Y";
    if((stream >> std::get_time(&tm, format.c_str())).fail()) {
        std::cout << "Parsing failed" << std::endl;
    }
    std::cout << std::chrono::seconds(std::mktime(&tm)).count() << std::endl;
}

我用 Buster 和 Bulleseye 尝试了 Raspberrys,但都无法执行代码。 我运行 Ubuntu 22.04 的计算机可以很好地执行该示例。 我试图在解析 arm 架构上的日期时找到已知问题,但没有找到任何问题。

非常感谢任何帮助!

c++ arm std
© www.soinside.com 2019 - 2024. All rights reserved.