C++ C++;字符串cout字符丢失
这是Visual studio中的一个控制台应用程序,因此我想看看如果在C++ C++;字符串cout字符丢失,c++,std,iostream,C++,Std,Iostream,这是Visual studio中的一个控制台应用程序,因此我想看看如果在cout中调用cout会发生什么。它有点工作,但它删除了一个有点奇怪的角色。因此,它会从main的cout中的字符串中删除字符量。因此,它将从doPrint()函数的返回值中删除尽可能多的字符 例如: 如果返回值为1,它将输出“aaaaa blllll” 如果返回值为2,则将输出“aaaaa llll” #包括“stdafx.h” #包括 int doPrint() { std::cout嗯,基本上发生的是指针算法和指定的函
cout
中调用cout
会发生什么。它有点工作,但它删除了一个有点奇怪的角色。因此,它会从main
的cout
中的字符串中删除字符量。因此,它将从doPrint()
函数的返回值中删除尽可能多的字符
例如:
如果返回值为1,它将输出“aaaaa blllll”
如果返回值为2,则将输出“aaaaa llll”
#包括“stdafx.h”
#包括
int doPrint()
{
std::cout嗯,基本上发生的是指针算法和指定的函数调用求值顺序
"BBLLLLLLLLLL" + doPrint()
所以
屈服
BLLLLLLLLLL
LLLLLLLLLL
及
屈服
BLLLLLLLLLL
LLLLLLLLLL
使用std::cout
它对字符数组文本应用函数指针算法,并“松开”字符,因为doPrint()
生成的值大于0
+
的运算符优先级高于“bbllll”+doPrint()
当然不会像您认为的那样执行操作。请阅读指针算术。这可以简化为int main(){std::cout@user4568696好吧,要想让它成为一个好的答案,这个时候还需要10张赞成票:-P…@Boopy别担心,我只是在开玩笑,我已经得到了足够的奖励;-)。找到“接受”按钮至少是你这边足够好的行动。
LLLLLLLLLL
std::cout << "BBLLLLLLLLLL" + doPrint() << std::endl;