一颗小码农 2022-03-21 12:50 采纳率: 33.3%
浏览 15

c++当stoi与sprintf共存时无法编译通过

问题遇到的现象和发生背景

stoi与sprintf共存时无法编译通过

问题相关代码,请勿粘贴截图
#include<string>
#include<algorithm>
#include<vector>
#include<sstream>
using namespace std;
int main()
{
    string s = "123";
    int a = std::stoi(s);
    int c = 2;
    char s2[2];
    sprintf(s2,"%d", c);
    cout << a;
}


运行结果及报错内容

img

我的解答思路和尝试过的方法
我想要达到的结果

求告知如何解决

  • 写回答

2条回答 默认 最新

  • 真相重于对错 2022-03-21 13:40
    关注

    sprintf第一个参数要求的是char* ,你给的是string,不兼容
    改成
    char buffer[20];
    sprintf(buffer,"%d"...)

    评论

报告相同问题?

问题事件

  • 创建了问题 3月21日