2017-03-15 118 views
1

我深化发展写在C(的Visual C++) 一场轻松的比赛,我想知道是否有播放声音的方式, 感谢 (我使用Visual Studio)的Visual C++或C播放声音

+1

大量的计算机程序播放声音。你认为他们可以使用一些你不知道的魔法吗? – Barmar

回答

1

看看在PlaySound()功能。

如果调用PlaySound()SND_ASYNC标志,功能开始播放声音后立即返回。

例如:

#include <windows.h> 
#include <mmsystem.h> 

PlaySound(L"test.wav", NULL, SND_ASYNC | SND_FILENAME); 

您还可以在您的项目设置中添加Winmm.lib


这里有一个简单的例子,应该工作:

#pragma once 

#include "stdafx.h" 
#include <windows.h> 
#include <mmsystem.h> 

int _tmain(int argc, _TCHAR* argv[]) 
{ 
    if(!PlaySound(L"test.wav", NULL, SND_ASYNC | SND_FILENAME)) 
     printf("error\n"); 
    else 
     printf("ok\n"); 

    getch(); 
    return 0; 
} 

,并在stdafx.h中:

#pragma once 

#include <iostream> 
#include <tchar.h> 
#include <conio.h> 
+0

我在哪里可以找到lib?当我添加代码时,它会给我带来很多错误。 – ohhConti

+0

它已经可用了,您只需在项目设置中将'Winmm.lib'添加到'Linker/Input/Additional Dependencies'。错误可能来自链接器 - 如果没有,请告诉我,我会进一步检查。 –

+0

我在哪里可以找到lib?当我添加代码时,它会给我带来很多错误。它看起来像我有一些文件损坏,它说“dentifier”WORD“未定义” – ohhConti