级别: 初级
作者:elprup
2009 年 9 月 24 日
PC喇叭
在很久之前,声卡还是很奢侈的时候,几乎所有的声音都是由这个喇叭发出的。所有的电脑都配有这个喇叭,就是发出开机时那个嘟的喇叭。实验室里突然有一个软件用这个喇叭来作为电话终端的铃声。某同学静音了也没有禁掉这个声音。我感觉很好玩,在网上随便搜了一下,还真有在Windows下可以控制喇叭的API。
编程实例
转载地址:
http://www.xiugoo.com/bbs/thread-217627-1-1.html
#include <iostream>
using namespace std;
#include <Windows.h>
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语言是一种非常基础且强大的编程语言,它被广泛用于系统级编程,包括对硬件设备的直接控制。本篇文章将详细讲解如何使用C语言来控制PC的扬声器,实现声音的输出。 首先,我们需要理解PC扬声器的工作...
在Windows环境下进行Socket编程,通常使用C语言进行底层网络通信的实现,因为它提供了灵活且高效的方式来操作网络套接字。本示例中的"Windows环境下socket编程(C语言编写)"是一个简单的服务器-客户端通信模型,它...
单片机C语言Windows环境编程宝典.北航和周立功公司一起出的一本还不错的入门的书。 Cx51
总的来说,Windows下的C语言网络编程需要掌握Windows API的使用,理解句柄的概念,熟悉网络通信的基本原理,并能够有效地使用网络相关的API函数。随着经验的积累,你可以编写出能连接、通信和处理数据的复杂网络应用...
C语言编程规范C语言编程规范C语言编程规范C语言编程规范C语言编程规范C语言编程规范C语言编程规范C语言编程规范C语言编程规范C语言编程规范C语言编程规范C语言编程规范C语言编程规范C语言编程规范C语言编程规范C语言...
《单片机C语言Windows环境编程宝典》是一本深入探讨单片机编程技术的珍贵资源,尤其适合初学者和有经验的工程师作为参考。这本书的配套光盘内容包括了丰富的学习材料,如源代码、模拟器以及开发工具,旨在帮助读者在...
《精通UNIX下C语言编程与项目实践》从实用的角度出发,深入浅出地对UNIX环境下C语言编程进行全面分析和介绍。《精通UNIX下C语言编程与项目实践》共分为6个部分,详尽而细致地介绍了UNIX环境下的编程概念、文件系统...
单片机C语言Windows环境编程宝典.part1
### Windows下C语言网络编程快速入门 #### 一、走近Windows C语言编程 在学习Windows下的C语言网络编程之前,我们需要了解几个基本概念。通常情况下,C语言的学习路径是从C语言本身开始,随后过渡到C++,理想情况...
你可以试试一款名为PC Speaker Driver with Windows的软件,利用它可以模拟出一个虚拟的声卡,利用PC机箱上的喇叭播放声音。尽管效果不怎么理想,但有声音总比没有声音好,而且能让一些必须有声卡才能安装运行的软件...
在Windows环境下,使用C语言编写扫雷游戏是一项...通过以上这些知识点的学习和实践,你可以构建一个基本的Windows下的C语言扫雷游戏。这是一个很好的项目,能够让你深入理解C语言编程、Windows程序设计以及算法应用。
c语言趣味编程源代c语言趣味编程源代c语言趣味编程源代c语言趣味编程源代c语言趣味编程源代c语言趣味编程源代c语言趣味编程源代c语言趣味编程源代c语言趣味编程源代c语言趣味编程源代c语言趣味编程源代c语言趣味编程...
在Linux环境下进行C语言编程,不仅需要掌握C语言的基础语法,还需要熟悉Linux系统的基本操作以及相关的开发工具。这个“Linux环境下C语言编程指南(源代码)”可能包含了从编写、编译、调试到优化C程序的全过程,...
Linux下C语言应用编程》深入浅出地讲解了Linux下C应用程序开发所需的基本工具、知识和技巧,主要包括:开发工具的使用和技巧、文件I/O编程、多进程编程、进程间通信、多线程编程、网络编程等内容。可以让读者轻松、...
"WIN-TC V1.9.1 简繁双语版"是提及的压缩包文件,这通常是指Windows下的Turbo C编译器的一个版本,TC(Turbo C)是由Borland公司推出的经典C语言集成开发环境。Turbo C以其快速的编译速度和轻量级的特性,在早期的...
在Linux环境下进行C语言编程是许多开发者的基础技能之一。C语言是一种强大的、高效的编程语言,尤其适合系统级编程和嵌入式开发。本教程将帮助初学者了解如何在Linux操作系统中利用C语言进行编程。 首先,你需要...
网络环境下的C语言编程技巧及实例,偏向于网络方面