Bip yang paling dasar tetap '\a' , jika terminal Anda mendukungnya:
fprintf(stdout, "\aBeep!\n" );
Silakan lihat beep
linux standar kode sumber.http://www.johnath.com/beep/beep.c
Ini menggunakan ioctl KIOCSOUND untuk "bip", tetapi Anda tidak memerlukan hak pengguna super untuk membuatnya diputar. Saya telah mengonfigurasinya agar dapat dibaca dan dijalankan oleh pengguna di grup "bip".
Jadi pengguna standar saya dengan UID 1000 ada di grup dengan GID 501 (saya menyebutnya "bip"). Di samping ini saya harus chmod 4750 /usr/bin/beep
dan sekarang saya dapat memutar bunyi bip (dalam rentang 20-20000Hz) tanpa meminta hak superuser.
Saya pikir satu-satunya cara untuk melakukan ini adalah menggunakan suid untuk memberikan akses root program saya sendiri, atau menggunakan beep
, yang sudah memiliki suid. Saya kira saya hanya akan menambahkan satu ketergantungan lagi, sebagai beep
toh tidak terlalu besar.
Terima kasih atas semua jawabannya, saya yakin perpustakaan lain bagus untuk sinyal yang lebih kompleks, tetapi saya membutuhkan yang sangat sederhana!
Saya pikir pertanyaan ini dapat ditandai sebagai diselesaikan / ditutup, kalau begitu.
Jika ada yang menemukan cara untuk membuat bunyi bip menggunakan konsol tanpa hak pengguna super, saya masih tertarik dengan solusi ini :)
Sekali lagi terima kasih.