我正在将一堆ascii字符打印到控制台,作为二进制数字的表示,但是,每当它将数字7输出到控制台时,windows就会发出嗡嗡声。在网上,我可以看到一些人在谈论ascii 7发出噪音,但我似乎找不到在代码中禁用它的位置。
for (size_t i = 0; i < 1160; i++)
{
std::cout << "\n" << (char)decimalarray[i];
}当UIN8数组中的值为7时会发生这种情况,并且我尝试将该值打印为char。打印(int)decimalarray[1157]输出数字7打印(char)decimalarray[1157]只输出蜂鸣噪声
编辑:如果有一种只写可打印字符的方法,那就很理想了。不容易硬编码的值,因为程序使用的每个ascii字符,有正常的执行。
有人能帮忙吗?谢谢
发布于 2022-01-02 17:48:34
7号代码是贝尔。它就是要这么做的。
要禁用它,您有两个选择。
要执行条件:使用isprint
例如:
#include <ctype.h>
#include <iostream>
int main(){
int c =7;
if (isprint(c))
std::cout <<'\n' << static_cast<char>(c);
}发布于 2022-01-02 17:45:26
Ascii字符0x7或Bell的目的是发出恼人的哔声。要禁用它,需要在终端或操作系统首选项(如)中找到适当的控件。
https://stackoverflow.com/questions/70558248
复制相似问题