变量陷入If

时间:2018-05-21 17:45:05

标签: c++ string if-statement char const

我正在尝试学习C ++,而我正在创建一些无用的应用程序来测试。 我正在使用const char和参数,在这段代码中我无法获得标题字符串。

const char* title = "";
if (argc >= 3) {
    string tittle(argv[2]);
    title = tittle.c_str();
}

请帮助我!

1 个答案:

答案 0 :(得分:6)

问题是当你使用

    title = tittle.c_str();

你留下一个悬垂的指针。而不是const const* title,请使用std::string title

std::string title;
if (argc >= 3) {
    title = argv[2];
    cout << "true";
}

如果您需要在程序中稍后char const*,则可以使用title.c_str()。希望你不需要它。