\a是一个http://msdn.microsoft.com/en-us/library/h21280bw.aspx,它表示关于字符常量的钟式警报。从MSDN看Console.Beep()方法的解释
通过控制台扬声器播放蜂鸣声。
让我们考虑下面的示例代码:
public static void Main(string[] args)
{
Console.WriteLine("\a");
Console.Beep();
}这段代码会产生2个蜂鸣声,对我来说听起来也是一样。现在我要看证据。
当我对Console.Beep()方法进行分解时,它使用内核32.dll中的Win32Native.Beep;
public static void Beep(int frequency, int duration)
{
Win32Native.Beep(frequency, duration);
}他们的频率和持续时间可能是不同的,我没有说任何关于这些东西,但他们的来源是否相同(Win32Native.Beep)?\a使用哪个源作为铃声警报?
发布于 2013-02-10 15:01:55
这是我从查看音频(Windows 7 64位(是的,我必须重新启动到windows,我是专用的:)所能收集到的)。我用Fraps录制了音频,所以应该是可靠的。
这是我用来检查它们的代码:
using System;
using System.Threading;
namespace StackOverflow
{
class Program
{
private static void Main(string[] args)
{
Console.Write("\a");
Thread.Sleep(500);
Console.Beep();
}
}
}这是奥迪的两首曲目(Console.Write('\a')是上面的,Console.Beep()是下的)。

在我放大轨道的任何一点上,正弦波完全匹配,而且它们的持续时间完全相同,所以我不得不得出结论,它们实际上是相同的(在Windows 7上就是这样)。
https://stackoverflow.com/questions/14798426
复制相似问题