草庐IT

prinf-cout

全部标签

c++ - 控制台 cout 动画 - C++

我想为我cout-ing的40x20字符block制作动画。我想用system("cls");清除控制台,然后立即出现下一个字符block。目前,下一个街区将采用打字机风格。对于我的问题,最简单的答案就是立即输出一个20行x40个字符的ossstreamcout,而不是像打字机那样处理。主要.cpp:mazeCreator.cout();Sleep(5000);system("cls");输出()voidMazeCreator::cout(){charwallChar=(char)219;charpavedChar=(char)176;charlightChar='';charstar

c++ - 当程序作为服务运行时重定向 std::cout

我有一个使用std::cout打印到屏幕的C++程序。有时我需要将其作为服务运行。当它作为Windows服务运行时,有什么方法可以查看cout输出吗?将输出重定向到文件或某种调试程序将是理想的。显然,我可以用写入文件的函数替换cout,这可能是我要做的,但我很想知道是否还有其他解决方案。 最佳答案 基本上有无限的选择。首先想到的是:传递ostream引用你可以传递一个std::ostream引用:voidsomeFunc(std::ostream&out){//someFuncdoesn'tneedtoknowwhetherouti

c++ - printf 与 cout 性能

voidperfprint(unsignedintcount){chara[100]="fosjkdfjlsjdflw0304802";for(unsignedinti=0;i环境:C++、VS2010、Windows7、32位、Core-i7、4GB、3.40GHz我用count=10000测试了这两个函数,每个函数5次。使用QueryPerformanceCounter测量性能。perfprint>~850毫秒(5次运行的平均值)perfcout>~9000毫秒(5次运行的平均值)这是否意味着printf比cout快~10倍?编辑:使用/Ox、/Ot,发布版本中没有调试信息并在pe

windows - 谁能解释为什么 cout 之后的语句会改变输出?

最奇怪的事情正在发生。在下面的程序中,我正在打印一行。按原样,程序输出以下内容:-----FOCUS-----:0x22fc80:但是,如果我在cout之后注释掉7个语句中的任何一个,我会得到以下结果:-----FOCUS-----:0:我包含了tchar.h、windows.h、iostream和Psapi.h。我正在使用MinGW-64,编译命令是:"C:\MinGW64\bin\g++.exe"-oMyProgram.exeMyProgram.cpp-lpsapi程序是:intmain(){HWNDfocusThreadWnd=GetForegroundWindow();DWOR

c++ - 将 std::cout 重定向到新创建的控制台

这个问题在这里已经有了答案:Redirectingcouttoaconsoleinwindows(11个答案)关闭8年前。当您在Windows下创建C++控制台应用程序时,您会自动获得为您创建的控制台窗口,并将std::cout输出到控制台窗口。我有一个GUI应用程序,我还想为其创建一个控制台窗口。我可以使用AllocConsole()函数创建控制台窗口,但如何将std::cout重定向/附加到控制台,以便输出显示在控制台窗口中?

c++ - 在 AllocConsole 之前执行 std::endl 会导致不显示 std::cout

我正在尝试使用经典的RedirectIOToConsole函数在WindowsVisual2012、Linker/Subsystem=Windows(/SUBSYSTEM:WINDOWS)的输出控制台上重定向跟踪。在AllocConsole之前执行std::endl似乎会导致显示痕迹出现问题。下面是我的测试:#include#include#includevoidRedirectIOToConsole(){FILE*conin,*conout;AllocConsole();freopen_s(&conin,"conin$","r",stdin);freopen_s(&conout,"c

c++ - 如何在 Windows 中重定向 std::cout 和 printf

我已经根据这篇文章创建了程序CreatingaChildProcesswithRedirectedInputandOutput,但它对std::cout和printf不起作用,所以从这样的程序中我得到了一个“你好,妈妈”字符串,而cout和printf部分没有任何结果:int_tmain(intargc,_TCHAR*argv[]){HANDLEhStdOut=GetStdHandle(STD_OUTPUT_HANDLE);constchar*buffer="Hello,momma";std::cout问:我如何拦截cout和printf?我无权访问子程序的源代码,我只需要拦截它的输出

c++ - 使用 cout 将字符显示为十进制数

在C编程语言中,我可以使用printf来显示一个字符及其等效的十进制数,这样的代码charc='e';printf("decimalvalue:%dcharvalue:%c\n",c,c);如何在C++中使用cout做同样的事情?例如,下面的代码显示字符,但如何让cout打印十进制值?charc='e';cout 最佳答案 cout一元+转换运算符会将char隐式转换为int。Demohere来自5.3.1一元运算符akaexpr.unary.op[7]Theoperandoftheunary+operatorshallhavear

c++ - 如何判断cout和cerr是否去同一个地方

在C++中有没有一种方法可以判断std::cout和std::cerr是否指向同一个目的地?也就是说,我希望能够区分程序何时启动program或program>log2>&1或program&>log对比program>log或program2>errors或program>log2>errors(用例是这样一种情况,我们希望在stdout和stderr分开时将错误信息打印到它们,但如果它们是两者都去同一个目的地。--是的,我知道这不理想,也不是官方推荐的做事方式,不应该被视为标准的做事方式。但是请不过请相信我,我们已经花时间考虑清楚了,对于我们的特定用例,这是最佳选择。)为了我们的目

java - 带有 C++ 的 JNI 在 cout、printf 和方法调用上不断崩溃

我正在用C++编写我的第一个JNI程序,并制作了一些测试方法以确保一切正常。问题是:当我调用方法测试时,它给出的结果波动很大。有时它会永远运行,有时我会遇到构建错误,有时我会收到fatalerror和错误消息。这不仅发生在printf和std::cout上,而且发生在方法调用上(然后我总是遇到fatalerror。我没有在问题中包含一个例子)。我看不到错误。希望得到一些帮助。我目前使用g++作为编译器,还有其他选项:-D__int64=int64_t。Java类:publicclassJNI{publicstaticnativeinttest();publicstaticnativei