用string为何第二点RE

P1143 进制转换

你用 `char` 数组,内存空间已经分配好了,可以利用。 你用 `std::string` 的话,内存空间还没有分配好,便无法利用。建议先把用于输出的 `out` 对象 `resize`(或 `assign`)到足够长,再进行赋值操作: ```cpp out.resize(100); ``` 否则,在如下测试上将容易运行错误(RE): ```text 10 1000000000 2 ``` 对样例进行测试,没有运行错误(RE),可能是因为样例中的答案较短,尚未侵蚀到系统关键内存。 实测修改后能通过。
by Zaoly @ 2024-04-04 00:21:28


|