¿Cómo producir un pitido utilizando el carácter de escape “\ a”?

Si escribo el siguiente progtwig, no se escuchará ningún pitido al ejecutar el código.

#include  int main() { printf("\a"); return 0; } 

¿Puede decirme cómo usar \a para producir un pitido utilizando el progtwig C?

La única cosa incorrecta (la mitad incorrecta ) con su progtwig es la firma main .

Para ser 100% portátil, debe ser int main(void) o int main(int argc, char **argv) o equivalente: int main() no es equivalente.


Y también imprimiría un '\n' , o vaciaría el búfer de salida en lugar de confiar en el runtime que limpiaba todos los búferes automáticamente, pero su progtwig debería sonar como suena. Si no es así, el problema está en otra parte, no con C

 #include  int main(void) { printf("\a\n"); return 0; } 

Estoy de acuerdo con @Steve Jessop. La gente hará grandes esfuerzos para mantener sus computadoras en silencio.

En Windows: como alternativa a “\ a”, puede usar el comando Beep de WinAPI. Si está utilizando Windows 7, es posible que esto no funcione como se esperaba.

Función de pitido (Windows)

Si está utilizando Windows, las versiones de Windows emiten un pitido muy diferente. Algunos de ellos permiten eso y funcionan bien, pero algunas versiones de Windows no lo hacen. En algunas ventanas, funciona solo en ese caso, si tiene un altavoz interno de la placa base. Pero en otras ventanas, funciona bien sin el altavoz interno de la placa base, directamente desde la tarjeta de sonido (¡eso sería bueno!).

Si tiene suerte, y si utiliza la versión de Windows adecuada, funcionará beep / Beep / printf (“\ a”) (en el altavoz interno (si tiene), o en el mejor de los casos mediante una tarjeta de sonido). Pero si está utilizando otra versión de Windows, no funcionará. Si en su computadora está bien, la PC de su amigo / miembro de la familia se silenciará, y él / ella pensará que usted escribió un mal progtwig 😀 pero no.

Mi consejo es que utilices una biblioteca para el audio. Es simple, multiplataforma, y ​​funcionará siempre todo el tiempo, todas las computadoras, etc. Por ejemplo, Allegro_v4, Allegro_v5, SDL (Simple DirectMedia Layer), o algo así. Estas bibliotecas funcionan bien con OpenGL / DirectX, y con estas bibliotecas, puedes cargar imágenes, reproducir videos y cosas así. Native OpenGL / GLUT / DirectX no puede hacer cosas así.

Enumere su sistema operativo, cómo ejecutó su código y si su computadora tiene una señal acústica.

Si usa Windows, tal vez esta pregunta y respuesta ¿Cómo hacer que suene un pitido en C en Windows? te ayudaria

Si usa una distribución de Linux GUI de escritorio, el emulador de terminal como gnome-terminal o xfce4-terminal tiene una campana de opción de preferencia para verificar. Luego, asegúrese de que su altavoz funcione.

El siguiente código me funciona bien:

 /* name: bell.c * run: gcc bell.c && ./a.out */ #include  int main(void) { printf("\a"); return 0; } 

Por cierto, su código no es el problema.

Por lo general, utilizo otra forma de obtener el pitido. Funciona al 100% en Windows 7.

  int x=7; //7 is beep sound other numbers may show emoji and characters printf("%c",x); 
 #include #include int main() { Beep(1000, 1000); /* you can use any number starting from 250, but make sure you use it both times return 0; }