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: ”
I don’t know if you can see it, but my computer beeps when I try to print it like this:
cout<<(char)7<<endl;
Another point of interest is that the ‘beep’ doesn’t originate from my on board beeper, but from my headphone/speaker
Is this just my computer or there something wrong with the cout function?
EDIT:
But then why does printing this character produce the beep sound? does that mean that I could send other such characters through the cout function to produce different effects?
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.