草庐IT

prinf-cout

全部标签

c++ - cout 语句中使用的条件运算符

通过尝试,我开始知道有必要在cout语句中将条件运算符放在括号中。这里有一个小例子:#includeintmain(){inta=5;floatb=(a!=0)?42.0f:-42.0f;//worksfinestd::cout输出是:42421为什么需要这些括号?在这两种情况下,条件运算符的结果类型都是已知的,不是吗? 最佳答案 ?:运算符的优先级低于运算符,即编译器将您的最后一条语句解释为:(std::cout这将首先流式传输(a!=0)的bool值计算。然后该表达式的结果(即对cout的引用)将被转换为适当的类型以用于?:运算

c++ - 为什么我的 cout 输出没有立即出现?

它不会打印放入循环中的字符串。该程序是借助g++编写的,包含sys/types.h头文件for(inti=0;i 最佳答案 你没有刷新你的输出。std::cout 关于c++-为什么我的cout输出没有立即出现?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/10554474/

c++ - cout 不在 Qt Creator 中打印

我已经在这个论坛上看到了这个问题,但我不知道为什么建议的答案对我的情况不起作用。所以我尝试寻求其他解决方案。我刚刚让我的Qtcreator在Linux下运行。我不明白为什么我的:cout当qdebug打印时不在控制台打印qDebug()这是我的.pro文件中包含的内容:QT+=coreguiTARGET=aaaTEMPLATE=appSOURCES+=main.cpp\mainwindow.cpp\IeplcModule.cppHEADERS+=mainwindow.h\IeplcModule.hFORMS+=mainwindow.ui#enableconsoleCONFIG+=con

c++ - iostream线程安全,cout和cerr一定要分开加锁吗?

我理解为避免输出混合,多个线程对cout和cerr的访问必须同步。在同时使用cout和cerr的程序中,单独锁定它们是否足够?还是同时写入cout和cerr仍然不安全?编辑说明:我知道cout和cerr在C++11中是“线程安全的”。我的问题是不同线程同时写入cout和写入cerr是否会像两次写入cout那样相互干扰(导致交错输入等)。 最佳答案 如果你执行这个函数:voidf(){std::cout从多个线程中,您将获得两个字符串的或多或少的随机交错,"Hello,"和"world\n"。那是因为有两个函数调用,就好像你写了这样的

c++ - 为什么将 std::string 写入 cout 会导致未知运算符 << 错误?

当我尝试从我的方法之一输出返回值时出现错误:Error:Nooperator"main.cpp#includeusingnamespacestd;#include"Book.h"intmain(){book.setTitle("AdvancedC++Programming");book.setAuthorName("Linda","Smith");book.setPublisher("MicrosoftPress","OneMicrosoftWay","Redmond");book.setPrice(49.99);cout>i;return0;};返回字符串的方法:stringBook

运算符的 C++ 链接 << for std::cout like usage

这个问题在这里已经有了答案:关闭11年前。PossibleDuplicate:std::endlisofunknowntypewhenoverloadingoperatorOperatoroverloading我目前正在编写一个记录器类,但是operator方法导致编译器错误。这是该类的最小化版本,位于文件“logger.h”中:#includeclassLogger{public:Logger():m_file(std::cout){}templateLogger&operator它包含在我的main.cpp中,当我输出字符串文字时它可以完美地工作:log但是,下面的代码不会编译。#

c++ - C++、cin、cout、threads 和 sync_with_stdio 的损坏输出

我正在尝试用C++编写一个程序,以尽可能最快的方式处理大量数据包。来自标准的所有数据包都应尽可能快地读取,从池中发送到一个线程进行处理,然后处理到将数据包写入标准输出的输出线程。当您在C++中使用标准输入和输出时,建议在任何输入或输出之前调用std::ios_base::sync_with_stdio(false)功能。在某些环境中,这实现了很大的加速,但您应该避免在调用后使用标准C函数进行输入/输出。好吧,这似乎在单线程中工作得很好。但正如我所说,我的意图是使用一个线程用于输入,一个用于输出,多个线程用于并行处理。我观察到输出存在一些问题。这是输出线程(非常简化):voidPacke

c++ 无法获取 "wcout"来打印 unicode,并让 "cout"继续工作

无法让“wcout”在多个代码页中打印unicode字符串,同时让“cout”继续工作请帮我让这3行一起工作。std::wcout输出:abchelloworldfromcout!我试过:#include#include_setmode(_fileno(stdout),_O_U8TEXT);问题:“wcout”失败尝试过:std::localemylocale("");std::wcout.imbue(mylocale);和:SetConsoleOutputCP(1251);和setlocale(LC_ALL,"");和SetConsoleCP(CP_UTF8)没有效果

Cout 的用法

c语言中的表示"%d"→123"%7d"→123(当输出数据宽度小于m时,在宽域内向右靠齐,左边多余位补空格)"%07d"→0000123★有时希望按照一定的格式进行输出,如按十六进制输出整数,输出浮点数时保留小数点后面两位,输出整数时按6个数字的宽度输出,宽度不足时左边补0,等等。C语言中的printf()函数使用以%开头的格式控制符,例如%X、%.2f、%6d等;C++中的cout对象则使用流操作算子(你也可以叫做格式控制符)或者成员函数进行控制。使用流操作算子C++中常用的输出流操纵算子如表1所示,它们都是在头文件iomanip中定义的;要使用这些流操纵算子,必须包含该头文件。注意:“流

C++学习之旅 第二章 printf与cout

目录1.printf简介 2.printf的四种用法2.1printf("字符串");2.2printf("输出控制符",输出参数);2.3printf("输出控制符1输出控制符2 ,,,,,,,,",输出参数1,输出参数2,.......);2.4printf("输出控制符非输出控制符",输出参数);3.printf为什么需要输出控制符4.cout简介cout的三种用法5.1std::cout5.2 加上usingnamespacestd;可不用在前面加上std::5.3在usingnamespacestd;std后面加上::cout 6.cout和i/i++/++i的组合使用 7.ioma