Casa > C > Como Podemos Apitar No Nosso Programa C?

Como podemos apitar no nosso programa c?

Fazer sons não faz parte das bibliotecas C padrão, então você precisa de alguma biblioteca especial para fazer sons. E essa biblioteca vai depender do seu hardware e sistema operativo.

O que é, C é usado a partir de sistemas muito pequenos como a placa Arduino, antigos sistemas MS-DOS, Windows, Linux e MacOS mas também em grandes sistemas mainframe que apenas têm um terminal. Como vários sistemas operacionais são capazes de simular um modus terminal, fazer um beep significaria basicamente que você enviaria um caracter [BELL] para o terminal, que o terminal traduziria em um beep.

Sem o terminal, você precisaria de uma biblioteca que tivesse acesso ao hardware do sistema, especificamente a placa de som e/ou alto-falantes. Windows, Linux e MacOS têm todas várias bibliotecas relacionadas com o som que lhe permitem escolher o efeito sonoro que quiser. Isto pode ser um simples beep ou um som de campainha real através do MIDI bor ou apenas um ficheiro MP3/WAV que é tocado no altifalante através da placa de som. Mesmo assim, sem alto-falantes significa sem som.

Para o Arduino, é ainda mais complexo, pois você precisaria decidir que tipo de hardware de som você vai anexar e usá-lo enviando sinais através de um pino. O número de soluções aqui é muito maior do que em computadores normais, mas também muito específico para hardware.

C destina-se a compilar e correr em tantas plataformas quanto possível. Ninguém nunca considerou a exigência de som no C padrão. Por quê? porque o C usava um terminal na época e um terminal podia processar o caracter [BEEP], se os sons fossem necessários. Mas os sons também eram considerados irritantes na época, pois todo o escritório ouvia o sinal sonoro do seu computador. Então os sons nunca chegaram ao padrão C.

.

De Berliner Dimple

Qual é a melhor marca, Xiaomi ou RealMe? :: A Xiaomi é uma marca de confiança (comparando-a com marcas como a Samsung e a HTC)? O que é melhor: Xiaomi MI3 ou HTC Desire 816?