这是一个我不太明白的问题:
该命令system("pause");被教给新程序员,作为暂停程序并等待键盘输入继续的方法.然而,许多资深程序员似乎不赞成这种不应该在不同程度上做的事情.
有人说使用起来很好.有人说这只是在你被锁在你的房间而没有人在看的时候使用.有人说,如果你使用它们,他们会亲自到你家里杀了你.
我,我自己是一名没有正式编程培训的新程序员.我使用它是因为我被教导使用它.我不明白的是,如果它不是可以使用的东西,那么我为什么要教它使用它?或者,另一方面,它毕竟不是那么糟糕吗?
你对这个问题有什么看法?
在某个地方,我在大学里做过一些C和C++,但是我并没有太多关注C++.现在我想关注C++,但是当我使用该getch()函数时,我会从下面收到警告.
警告C4996:'getch':不推荐使用此项目的POSIX名称.而是使用符合ISO C++的名称:_getch.详细信息请参见在线帮助.
现在,我正在使用VS 2005 express,我不知道如何处理这个警告.我需要getch()在printf()错误消息或其他需要密钥命中的内容之后使用.
你能帮帮我吗?
我知道getch不是标准的C/C++函数,但我倾向于喜欢它,因为它不需要你在返回之前按Enter键.所以我想知道标准C++中是否有任何具有相同效果的等价物(不要求你按Enter键)?
我在这个网站上已经阅读了类似的问题,但他们的答案都没有说明是否有标准和便携式等价物.
以前,我在支持#include <conio.h>头文件的Windows 上使用 c++/c 编译器,但在我拥有的 Linux 上
gcc (Debian 4.9.2-10) 4.9.2
Copyright (C) 2014 Free Software Foundation, Inc.
This is free software...
Run Code Online (Sandbox Code Playgroud)
我想要一个与getch(). 我不知道为什么我的编译器不支持头文件#include <conio.h>
在网上搜索后,我得到了这个,它说这cin.get();可能是最接近的等价物,但这两者的不同之处在于,如果我们编写getch()它,则不会显示在控制台上输入的字符,而如果我们使用cin.get()它输入一个字符,则会在控制台上显示该字符安慰。我不希望字符显示在控制台上。
usinggetchar()还会在控制台上显示字符。