【问题标题】:how to print a string to console in c++如何在 C++ 中将字符串打印到控制台
【发布时间】:2013-02-10 21:03:10
【问题描述】:

我正在尝试在 c++ 控制台应用程序中将字符串打印到控制台。

void Divisibility::print(int number, bool divisible)
{
    if(divisible == true)
    {
        cout << number << " is divisible by" << divisibleBy << endl;
    }
    else
    {
        cout << divisiblyBy << endl;
    }
}

我有正确的包含等,我相信这个错误只是我根本不知道如何在 c++ 中打印到控制台,我想这不是这样做的方法

编辑:抱歉忘了提及 divisiblyBy 是字符串

【问题讨论】:

  • 什么不起作用?你是如何调用这段代码的?你看到什么错误?帮助我们帮助您。你所做的只是发布了一段孤立的代码,它(孤立地)看起来在语法上是有效的。
  • 您的目标是哪个操作系统?
  • 注意divisibleBy等全局变量不好;您应该将其作为常量引用参数传递给函数。
  • 总的来说,这是打印到cout 的正确方法,如果cout 附加到(要去)控制台,它应该是正确的。如果您从 GUI IDE 运行它,它会创建一个新窗口然后消失,这实际上不是程序的直接问题,而是编程环境的问题。您可能希望在字符串文字中的 by 之后有一个空格。
  • 确保您没有忘记程序顶部的“使用命名空间标准”。尝试将所有“cout”替换为“std:cout”以解决问题。

标签: c++ console cout


【解决方案1】:

是的,可以将字符串打印到控制台。

#include "stdafx.h"
#include <string>
#include <iostream>

using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
    string strMytestString("hello world");
    cout << strMytestString;
    return 0;
}

stdafx.h 与解决方案无关,其他一切都是。

【讨论】:

    【解决方案2】:

    你所要做的就是添加:

    #include <string>
    using namespace std;
    

    在顶部。 (顺便说一句,我知道这是在 2013 年发布的,但我只是想回答一下)

    【讨论】:

    • 感谢您添加此评论,许多人发布了不完整的代码,因此由于缺少 1 或 2 行“包含”、“使用”等,因此对于初学者来说毫无用处。
    【解决方案3】:

    “Visual Studio 不支持将 std::cout 作为非控制台应用程序的调试工具”
    - 从 Marius Amado-Alves' answer 到“如何在非控制台应用程序中查看 cout 输出?"

    这意味着如果你使用它,Visual Studio 在“输出”窗口中什么也不显示(在我的例子中是 VS2008)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-12-12
      • 1970-01-01
      • 1970-01-01
      • 2012-03-11
      • 2017-08-17
      • 2014-04-23
      • 2023-01-03
      相关资源
      最近更新 更多