C++ C++,韩元';t显示最后一行代码

C++ C++,韩元';t显示最后一行代码,c++,C++,这不管用吗?我的意思是,代码只是一个测试,它的意思是这样对话:你叫什么名字?这里是name,这里是Hello name,但在我输入我的名字并单击enter之后,它并没有显示Hello的最后一行。这是代码 #include <iostream> #include <string> int main (void) { using std::cin; using std::cout; using std::string; string nam

这不管用吗?我的意思是,代码只是一个测试,它的意思是这样对话:你叫什么名字?这里是name,这里是Hello name,但在我输入我的名字并单击enter之后,它并没有显示Hello的最后一行。这是代码

#include <iostream>
#include <string>

int main (void)
{ 
    using std::cin;
    using std::cout;
    using std::string;
    string name = "";
    cout << "What is your name, pls?\n";
    cin >> name;
    cout << "\nHello " << name.c_str() << "\n";
    return 0;
} 
#包括
#包括
内部主(空)
{ 
使用std::cin;
使用std::cout;
使用std::string;
字符串名称=”;
姓名;

cout它可能在它消失之前就显示出来了。如果你要编写控制台程序,如果你要向控制台发送输出,你应该从控制台运行它们,这样输出就有地方可去。

我猜你是从调试器运行的,或者双击可执行文件。在这两种情况下,当程序结束时,控制台将关闭。因此,程序产生了输出,但在控制台关闭之前,您无法看到它


从预先存在的控制台运行程序,使控制台在程序结束后保留。或者,在调试过程中,安排程序在发出最终输出后不会立即终止。一种简单的方法是在程序结束时放置断点。

完成程序后,按
Ctrl+F5(在不调试的情况下运行)
。这将在关闭窗口之前提示,这是您想要的。

基本上,当您输入姓名时,它会显示最后一行,并在返回0后退出。 以下是要避免的事项
1-使用命令行运行应用程序
开始->附件->命令提示 转到应用程序正在使用cd命令的文件夹

 c:>cd c:\path\foldername

现在通过键入程序名来运行应用程序,例如

 c:\path\foldername>my_application.exe

它将显示您的最后一行

2 -如果你使用微软Visual C++,按Ctrl +F5运行你的程序


3-不建议这样做,但只要您正在调试,就可以使用它,然后将其从代码中删除。包括conio.h头文件并添加getch();返回语句之前的行。它将为您保留屏幕,直到您按下一个键。

确保在main超出范围之前放置一个断点。我猜您的控制台将消失在VS下

此外,您不需要在最后一个cout语句中提取char*:


cout一个棘手的解决办法是添加类似的内容

cin >> name;
最后,就在
返回0;
之前。它强制窗口在返回(关闭程序)之前等待输入(即点击返回)

这不一定是一个好的设计,但如果您只想运行一些测试,那么它就可以实现

  • 打开终端(或命令提示窗口)
  • 导航到包含可执行文件的文件夹
  • 运行它
  • 它没有消失,只是跑得很快

    每个IDE都有一个键盘快捷键,允许您运行代码并在执行完成后暂停

    此键盘快捷键是Visual Studio中的Ctrl-F5

    我不知道你在运行什么IDE,但这是你的基本问题


    你可以做的另一件事是在ideone中测试你的代码:ideone.com/hb4Cel(这是相同的代码,粘贴在这里没有意义)

    > <代码> CUT消失,如果程序使用VS或其他类似的IDE,请确保控制台保持打开状态。或者,您可以从控制台/命令行运行程序。尽管C++有“代码> EntL\/Cuff>机械手,但是代码> > N>代码>在这种情况下是好的。@安德烈从流NEE起什么时候起?d是否在关闭前被显式刷新?无论你做什么,都不要安排程序不会终止。这是一个很糟糕的习惯。正确启动程序,而不是破坏程序以便不正确启动。@David出于恶意调试的目的,可以吗?否?@DavidHeffernan是否有一个特殊的用例你可以调试一个故意不终止的程序,但不能调试一个有终止功能的程序?@DavidSchwartz这是我的观点。你说的很对。但我所说的一切都与你不符。非常感谢你让我意识到我的IDE没有“不调试就运行”的功能让我意识到我应该开始使用VS,但当我在VS中使用“不调试运行”选项运行完全相同的代码时,我又遇到了另一个问题,这里是问题>>1>链接:致命错误LNK1123:转换为COFF期间失败:文件无效或损坏,这是我在未调试的情况下运行代码时遇到的问题。没有理由怀疑OP正在寻找肮脏的解决方法或糟糕的设计。他似乎更可能在尝试学习如何正确操作。