当我在C ++控制台应用程序中打印超过7个控制台输出时,为什么我的电脑会发出蜂鸣声?

时间:2013-11-01 13:38:49

标签: c++ c++-cli console-application iostream

// Convert Int to Char

#include "stdafx.h"
#include <iostream>

using namespace System;
using namespace std;

int main(array<System::String ^> ^args)
{
    for (short i = 0; i < 8; i++ )
    {
       char newChar = i;
       cout << i << " = " << newChar << "\n";
    }

    cin.get();

    return 0;
}

最后一次输出,数字7不显示任何字符,只显示空格。

4 个答案:

答案 0 :(得分:8)

Ascii代码7是bell字符,它应该让你的电脑发出哔哔声。

答案 1 :(得分:3)

ascii character 7bell\a,这就是您听到哔哔声的原因,引用了这篇文章:

  

在ASCII和Unicode中,值为7的字符为BEL。 [...]在C编程语言(创建于1972年)中,可以使用\ a将钟形字符放置在字符串或字符常量中。 ('a'代表“alert”或“audible”并被选中,因为\ b已经用于退格符。)

C ++草案标准部分2.2 字符集表示(强调我的):

  

基本执行字符集和基本执行宽字符集应各自包含基本源字符集的所有成员,以及控制字符代表警报,退格和回车,加上空字符[...]

然后Table 5 转义序列包含以下行:

alert BEL \a

答案 2 :(得分:3)

ASCII 7是\aBEL。实施可以选择发出哔哔声。 C ++通过C:

进行跨域化
  

C99§5.2.2字符显示语义

     

\a(警报)在不更改活动位置的情况下生成声音或可见警报。

答案 3 :(得分:2)

7是“bell”的ASCII码,这意味着如果可能,控制台应该发出噪音。曾几何时,它确实会使电传打印机响起铃声。