-2
这编译并运行,但为“a”生成垃圾值。为什么“a”不像“b”那样增量?为什么会产生垃圾?for循环中的意外行为
for(a,b=0; a,b != 55; a,b++)
{
//outputs garbage
std::cout << "a = " << a << std::endl;
//outputs expected results
std::cout << "b = " << b << std::endl;
}
编辑:即使 其他问题有一个同样有效的答案,我觉得这个问题是不同的。我找不到任何基于语义的措辞,我想知道为什么它不能在C++中工作,而不是如何使输出工作。
你需要学习C++的语法 - 特别是逗号运算符不会做你认为它的做法 –
当然,它的工作原理!然而,它可能以一种与你期望的不同的方式工作。工作吗? – CiaPan
对我有用,你期待什么输出? – DaveB