【问题标题】:How do I declare a string without assigning a value in C++?如何在 C++ 中声明一个字符串而不赋值?
【发布时间】:2009-11-02 12:37:26
【问题描述】:

我知道对于整数,你可以使用:

int value;

我试过了:

string str;

但是 Visual C++ 给了我一个错误。如何在不赋值​​的情况下声明它,然后使用cin >> str 进行赋值?

【问题讨论】:

  • 修改此问题以包含实际的错误消息 - 该信息是编译器试图帮助您;至少也给我们带来这样的好处。

标签: c++ string visual-c++ int cin


【解决方案1】:
#include <string>
int main()
{
 std::string str;
 return 0;
}

通过 MSDN 在Namespaces 上查看此信息

【讨论】:

  • 我也可以写“using namespace std; string str;”对?我在谷歌搜索 (cprogramming.com/tutorial/string.html) 时在这里阅读了它,但我想因为我已经写过“使用命名空间 std;”在“#include ”下面我不必重写它。
  • 另外,如果您发现自己在代码中经常使用 std::string,using std::string; 会有所帮助。
  • 一般来说,建议不要使用using namespace std;,而只是拉入你将实际使用的std命名空间的部分:例如using std::string; using std::cout; using std::endl;
  • Fabian,你当然是对的,你不必重写它
  • @Fabian,因为它应该是 std::cout, std::cin
【解决方案2】:
#include <string>
using std::string;

int main() {
    string str;
    return 0;
}

【讨论】:

    【解决方案3】:

    尝试以下方法:

    #include <iostream>
    #include <string>
    
    using std::string;
    using std::cout;
    using std::cin;
    
    int main()
    {
      string str;
      cout << "Enter a string: ";
      cin >> str;
      cout << "You entered: " << str;
    
      return 0;
    } 
    

    【讨论】:

    • iostring和iostream有什么区别?
    • 那是一个错字。 :P 谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-07
    • 1970-01-01
    • 2020-02-11
    • 2021-10-21
    • 2010-12-06
    相关资源
    最近更新 更多