gpt4 book ai didi

C++:用一个 istringstream 对象读入参数

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:36:35 27 4
gpt4 key购买 nike

int i1;
std::istringstream z(argv[1]);
z >> i1;
cout << i1;
z.str(argv[2]);
int i2;
z >> i2;
cout << i2;

这是我的代码。我的第一个参数是 123,第二个参数是 12。我希望输出为 12312。但我看到的却是 1234196880。这是为什么呢?我认为使用 str 方法我可以将流重置为第二个参数并将其读入?

最佳答案

当你这样做的时候

z.str(argv[2]);

该函数在内部调用其内部字符串缓冲区对象 (http://www.cplusplus.com/reference/sstream/stringbuf/str/) 的 str 成员,并且仅设置字符串缓冲区的内容。您需要倒回指针才能使用新设置的缓冲区 ( http://en.cppreference.com/w/cpp/io/basic_istream/seekg )

关于C++:用一个 istringstream 对象读入参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23246012/

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