c語言中播放音樂文件函數(shù) c語言播放音樂的代碼

在c語言程序中怎樣載入背景音樂啊,是背景音樂哦,求函數(shù)具體用法和實(shí)例。謝謝

代碼如下:

公司主營業(yè)務(wù):成都做網(wǎng)站、網(wǎng)站建設(shè)、移動(dòng)網(wǎng)站開發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競爭能力。創(chuàng)新互聯(lián)是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領(lǐng)域給我們帶來的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會(huì)用頭腦與智慧不斷的給客戶帶來驚喜。創(chuàng)新互聯(lián)推出大理州免費(fèi)做網(wǎng)站回饋大家。

#include windows.h

#include mmsystem.h

#pragma comment(lib, "WINMM.LIB")

/*播放音樂*/

void playMusic()

{

//aiyo.wav是放在代碼文件中

PlaySound(TEXT("aiyo.wav"),0,SND_FILENAME | SND_ASYNC);

}

/**

* 主? 函? 數(shù)(音樂放第一排)

*/

void main()

{

playMusic();

title();? ? ? ? ? ? //歡迎界面上的標(biāo)題

flower();? ? ? ? ? ?//打印字符畫

welcome();? ? ? ? ? //歡迎界面上的選項(xiàng)菜單

}

擴(kuò)展資料

C語言解析WAV音頻文件:

C語言基本的二進(jìn)制文件操作函數(shù)有fopen,fread等等。(注意是二進(jìn)制文件操作函數(shù),所以我們不討論fgets,這是普通的文本文件操作函數(shù))

fread是一個(gè)函數(shù)。從一個(gè)文件流中讀數(shù)據(jù),最多讀取count個(gè)項(xiàng),每個(gè)項(xiàng)size個(gè)字節(jié),如果調(diào)用成功返回實(shí)際讀取到的項(xiàng)個(gè)數(shù)(小于或等于count),如果不成功或讀到文件末尾返回 0。

它的函數(shù)原型為

size_t fread ( void *buffer, size_t size, size_t count, FILE *stream) ;

而且C語言還有一種類型叫做結(jié)構(gòu)體,它在內(nèi)存中是順序存儲(chǔ)的。剛好我們也已經(jīng)得知了WAV文件在文件中的順序以及該順序中每個(gè)部分對應(yīng)的含義。

那么我們可以事先根據(jù)前面所說的WAV文件結(jié)構(gòu)來定義好一個(gè)struct,然后在main主函數(shù)中初始化這個(gè)struct,并且通過fread的第一個(gè)參數(shù)帶入初始化好的這個(gè)struct,那么執(zhí)行之后就會(huì)自動(dòng)讀取該文件,并且按照順序自動(dòng)把這些元數(shù)據(jù)填充進(jìn)了我們初始化好的struct中。

C 語言:能不能用C語言編寫程序來播放音頻文件?

一.在程序中直接播放聲音文件

在VC++ 中的多媒體動(dòng)態(tài)連接庫中提供了一組與音頻設(shè)備有關(guān)的函數(shù)。利用這些函數(shù)可以方便地播放聲音。最簡單的播放聲音方法就是直接調(diào)用VC++中提供的聲音播放函數(shù)BOOL sndPlaySound ( LPCSTR lpszSound,UINT fuSound ); 或BOOL PlaySound( LPCSTR lpszSound, HMODULE hmod, DWORD fuSound );其中參數(shù)lpszSound是需要播放聲音的.W***文件的路徑和文件名, hmod在這里為NULL,fuSound是播放聲音的標(biāo)志,詳細(xì)說明請參考VC++中的幫助。 例如播放C:soundmusic.wav可以用sndPlaySound ("c:\sound\music.wav",SND_ASYNC);或PlaySound("c:\sound\music.wav",NULL, SND_ASYNC|SND_NODEFAULT );如果沒有找到music.wav文件,第一種格式將播放系統(tǒng)默認(rèn)的聲音,第二種格式不會(huì)播放系統(tǒng)默認(rèn)的聲音。

二.將聲音文件加入到程序中

在VC++的程序設(shè)計(jì)中,可以利用各種標(biāo)準(zhǔn)的資源,如位圖,菜單,對話框等。同時(shí)VC++也允許用戶自定義資源,因此我們可以將聲音文件作為用戶自定義資源加入程序資源文件中,經(jīng)過編譯連接生成EXE文件,實(shí)現(xiàn)無.W***文件的聲音播放。要實(shí)現(xiàn)作為資源的聲音文件的播放,首先要在資源管理器中加入待播放的聲音文件。

具體步驟入下:

1.獲得包含資源的模塊句柄:

HMODULE hmod=AfxGetResourceHandle();

2.檢索資源塊信息:

HRSRC hSndResource=FindResource(hmod,MAKEINTRESOURCE(IDR_W***E1),_T("W***E"));

3. 裝載資源數(shù)據(jù)并加鎖:

HGLOBAL hGlobalMem=LoadResource(hmod,hSndResource);

LPCTSTR lpMemSound=(LPCSTR)LockResource(hGlobalMem);

4.播放聲音文件:

sndPlaySound(lpMemSound,SND_MEMORY));

5.釋放資源句柄:

FreeResource(hGlobalMem);

C語言播放音樂的函數(shù)定義

調(diào)用DOS命令,讓 Windows Media Player 幫你播放

下面播放 "zzd.wav"

你若有別的格式文件,Windows Media Player 能識別的都可以播放。

#include stdio.h

void play_wav(char *s){

char cm[100];

sprintf(cm,"mplay32.exe /play %s",s);

system(cm);

}

main()

{

char s[100]="zzd.wav";

play_wav(s);

getchar();

return 0;

}

怎樣用標(biāo)準(zhǔn)C語言播放音樂?

用C語言播放音樂,一般需要額外的庫或者調(diào)用系統(tǒng)的API函數(shù)。

以Windows為例,可以通過PlaySound函數(shù)播放wav格式的音樂。示例如下:

#includestdio.h

#includewindows.h

#includemmsystem.h

#pragma?comment(lib,?"WINMM.LIB")

int?main()

{

PlaySound(TEXT("1.wav"),0,SND_FILENAME);?//1.wav是要播放的音樂文件

return?0;

}

如果想播放mp3音樂可以使用如下代碼。

注意:生成程序后,請?jiān)赾md中執(zhí)行此程序,不要在vc/vs的IDE中運(yùn)行。

#include?windows.h

#include?mmsystem.h

#include?stdio.h

#pragma?comment(lib,?"Winmm.lib")

int?main(int?argc,?char?*argv[])

{

//絕對地址形式

TCHAR?fileName[]="ganlusi.mp3";

TCHAR?shortName[MAX_PATH];

GetShortPathName(fileName,shortName,sizeof(shortName)/sizeof(TCHAR));

TCHAR?cmd[MAX_PATH+10];

wsprintf(cmd,"play?%s",shortName);

mciSendString(cmd,NULL,?0,?NULL);

Sleep(5?*?60?*?1000);?//這里是防止一播放就結(jié)束做的延遲

return?0;

}

本文名稱:c語言中播放音樂文件函數(shù) c語言播放音樂的代碼
文章來源:http://muchs.cn/article20/dosjico.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)頁設(shè)計(jì)公司全網(wǎng)營銷推廣、商城網(wǎng)站微信小程序移動(dòng)網(wǎng)站建設(shè)營銷型網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

搜索引擎優(yōu)化