Strange beep when using cout

前端 未结 4 1629
北海茫月
北海茫月 2021-01-18 19:41

today when I was working on some code of mine I came across a beeping sound when printing a buffer to the screen. Here\'s the mysterious character that produces the beep: \'

相关标签:
4条回答
  • 2021-01-18 19:53

    0x7 is the ASCII character that produces a 'bleep' sound. It is a non-printable character. Here is a full list of the ASCII characters and their codes: http://www.asciitable.com/

    Edit: The sound can be used for a veritable melange of things. However you cannot really produce other effects by sending other pieces of data through. In the table in the link above anything on the list below 0x20 (32 decimal) is a non-printable character. They can have different effects depending on where the data is actually output.

    Basically you could just write a loop to output 0-(whatever number you wish to stop at) to experiment and see what you can get.

    0 讨论(0)
  • 2021-01-18 19:58

    chat 7 is actually a "beep" character and not a screen character. Although sometimes documentation may show a character, it's generally not something you can render visually.

    0 讨论(0)
  • In ASCII the character 7 is the "bell" character that signals to the terminal that it should beep.

    EDIT: To answer your followup question, it's really just for historical reasons. The old teletype terminals needed a way to alert the operator of an incoming message so a bell was used. The bell character told the terminal to ring the bell rather than print a character.

    Modern terminal emulators do essentially the same thing, although they usually have an option to replace the audible bell with a visual one.

    0 讨论(0)
  • 2021-01-18 20:12

    char 7 is the ASCII code for BELL. Writing this character to the console causes the computer to emit a beep. It is perfectly normal.

    0 讨论(0)
提交回复
热议问题