C ++转义字符和引用变量输出混淆

时间:2013-10-14 03:50:37

标签: c++ visual-studio-2010

所以这些是让我感到沮丧的例子,因为它们看起来很简单,但却没有产生预期的结果。请考虑以下示例:

#include <iostream>

int main()
{
    int a = 7;
    int &b = a;

    std::cout << "a = " << a << " ,\tb = " << b << std::endl;

    b = 10;

    std::cout << "a = " << a << " ,\tb = " << b << std::endl;

}

输出:

a = 7 , b = 7
a = 10 ,    b = 10

有人可以向我解释为什么第一个转义字符似乎被忽略而且没有标签,但在第二个例子中,标签存在。一直在看这个例子,并没有更接近解决方案。

注意:我在Visual Studios 2010中运行它

1 个答案:

答案 0 :(得分:1)

a = 7 ,”有7个字符。如果在位置8处有一个制表位(例如,由tabs command为终端设置),附加制表符会有效地添加相同数量的空白作为附加空格字符。