C语言按键控制喇叭,Windows环境下C语言控制你的PC喇叭(PC Speaker)编程
级别: 初级
作者:elprup
2009 年 9 月 24 日
PC喇叭
在很久之前,声卡还是很奢侈的时候,几乎所有的声音都是由这个喇叭发出的。所有的电脑都配有这个喇叭,就是发出开机时那个嘟的喇叭。实验室里突然有一个软件用这个喇叭来作为电话终端的铃声。某同学静音了也没有禁掉这个声音。我感觉很好玩,在网上随便搜了一下,还真有在Windows下可以控制喇叭的API。
编程实例
转载地址:
http://www.xiugoo.com/bbs/thread-217627-1-1.html
#include
using namespace std;
#include
int main(int argc, char ** argv)
{
for (int ii = 1000; ii <1500; ++ii)
{
Beep(ii, 5);
}
cout << "all right!" << endl;
cin.get();
return 0;
}
其中关于Beep函数的用法为:
Beep
The Beep function generates simple tones on the speaker. The function is synchronous; it performs an alertable wait and does not return control to its caller until the sound finishes.
BOOL Beep(
DWORD dwFreq,
DWORD dwDuration
);
Parameters
dwFreq
[in] Frequency of the sound, in hertz. This parameter must be in the range 37 through 32,767 (0x25 through 0x7FFF).
Windows Me/98/95: The Beep function ignores this parameter.
dwDuration
[in] Duration of the sound, in milliseconds.
Windows Me/98/95: The Beep function ignores this parameter.
Return Values
If the function succeeds, the return value is nonzero.
结束语
网上还看到直接在C语言中嵌入ASM汇编语言实现的例子,不过在这里好像跑不通。有了这个功能,恶搞一下别人的PC终于声情并茂了,呵呵。
附:音频表
低八度 中八度 高八度
1 2 3 4 5 6 7 1 2 3 4 5 6 7 1 2 3 4 5 6 7
C 131 147 165 175 196 220 247 262 294 330 349 392 440 494 523 587 659 698 784 879 987
D 147 165 175 196 220 247 262 294 330 349 392 440 494 523 587 659 698 784 879 987 1108
E 165 175 196 220 247 262 294 330 349 392 440 494 523 587 659 698 784 879 987 1108 1244
F 175 196 220 247 262 294 330 349 392 440 494 523 587 659 698 784 879 987 1108 1244 1318
G 196 220 247 262 294 330 349 392 440 494 523 587 659 698 784 879 987 1108 1244 1318 1479
A 220 247 262 294 330 349 392 440 494 523 587 659 698 784 879 987 1108 1244 1318 1479 1660
B 247 262 294 330 349 392 440 494 523 587 659 698 784 879 987 1108 1244 1318 1479 1660 1863
C语言按键控制喇叭,Windows环境下C语言控制你的PC喇叭(PC Speaker)编程相关推荐
- GO语言教程1:Windows环境下GO语言的安装与配置
文章目录 1.下载和安装 2.设置环境变量和GOPATH目录 Go语言系列教程:https://blog.csdn.net/zhangpeterx/article/details/89040274 1 ...
- windows环境下C语言socket编程
最近由于实验需要,要求写一个c程序与java程序通信的软件,为了测试首先写了一个windows环境下c语言的socket(tcp)通信程序. 首先socket通信的步骤: 图一 sock ...
- c语言程序做成可执行文件,windows环境下C程序生成可执行文件
windows环境下,编写C程序,生成.exe,用于操作某个文件. 包含三部分:搭建环境.程序实现.程序分析. 1.搭建程序编写和编译环境 在windows下安装Git Bash(下载页面). 安装完 ...
- windows环境下用python控制ftdi芯片FT232H
通过搜索互联网资料,发现目前有两种流行的模块用于控制ftdi芯片,一种是pylibftdi,不过目前看到的资料只能控制USB转成串口,暂时无法控制I2C和SPI接口,这两种接口的控制程序还在开发计划中 ...
- Windows环境下安装Go语言
Windows环境下安装Go语言 下载 打开Go语言中文网下载页面:https://studygolang.com/dl 按照对应平台选择下载:https://studygolang.com/dl/g ...
- windows下编译c语言文件路径,解决JNI在Windows环境下因长路径导致编译失败问题
之前听一个朋友反馈LuaScriptoCore在Windows下编译会报错,今天特意跑到Windows环境下测试了一番,果然是存在问题.得到了下面的编译报错信息: Build command fail ...
- Windows环境下的麦克风录音系统
简介 这是我很早以前的大学毕业设计,忽然间找到贴出来以纪念自己的纯真年代...但是因为CSDN不给面子所以导致短短的一篇文章贴了足足7次..他老提时说文章超过了64K,老大,拜托,那是算上了里面的图片 ...
- Windows环境下Android NDK环境搭建
转自:http://blog.csdn.net/pengchua/article/details/7582949 前面介绍Windows下Android 开发环境配置,主要是面向JAVA开发环境,对只 ...
- Linux环境下——C语言聊天室项目
由于使用了多线程操作,客户端进入程序后请先随便注册一次用户后再进行使用. 本程序默认第一个用户即ID为1的用户为超级管理员. 由于线程阻塞,最后的踢人操作有阻塞,需要在被踢出在线链表后手动下线. 看了 ...
最新文章
- ubuntu16.04: mininet下使用ryu当做控制器
- ASP.NET获取客户端IP及MAC地址
- 贝叶斯决策思想的应用与延伸
- [译] 想帮助用户做决定?你的APP可以这样设计!
- 在SQL Server中使用architectureid
- VS2010与VS2012变化的快捷键
- 【TSP】基于matlab蜜蜂算法求解旅行商问题【含matlab源码 1248期】
- MATLAB 快速傅里叶变换分析
- 平面设计需要学什么软件?平面设计软件有哪些?
- 5.14 创建基于图层的切片并输出网页 [原创Ps教程]
- linux查看设备pid vid,Linux设备PID VID详细说明
- 关于win10无法打开.msi文件的解决方法
- android 手机录屏功能,手机自带录屏功能在哪里找?轻松搞定屏幕录制
- 设置mathtype章节号显示与隐藏
- 企业微信获取corpid,Secret,Agentid
- 学习笔记:Oracle函数大全
- python编写的动物识别专家系统_自己写的简单动物识别专家系统
- 【笔记】在 Windows 中制作 Ubuntu 系统的USB启动盘
- 基于Html+Css+javascript的游戏网页制作红色主题(我和我的祖国10页)
- C++ 大作业 记账本