當前位置:首頁 » 編程語言 » c語言播放音樂

c語言播放音樂

發布時間: 2024-05-27 02:39:12

⑴ 怎樣用標准C語言播放音樂

用C語言播放音樂,一般需要額外的庫或者調用系統的API函數。

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

#include<stdio.h>
#include<windows.h>
#include<mmsystem.h>
#pragmacomment(lib,"WINMM.LIB")
intmain()
{
PlaySound(TEXT("1.wav"),0,SND_FILENAME);//1.wav是要播放的音樂文件
return0;
}

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

注意:生成程序後,請在cmd中執行此程序,不要在vc/vs的IDE中運行。

#include<windows.h>
#include<mmsystem.h>
#include<stdio.h>
#pragmacomment(lib,"Winmm.lib")
intmain(intargc,char*argv[])
{
//絕對地址形式
TCHARfileName[]="ganlusi.mp3";
TCHARshortName[MAX_PATH];
GetShortPathName(fileName,shortName,sizeof(shortName)/sizeof(TCHAR));
TCHARcmd[MAX_PATH+10];
wsprintf(cmd,"play%s",shortName);
mciSendString(cmd,NULL,0,NULL);
Sleep(5*60*1000);//這里是防止一播放就結束做的延遲
return0;
}

⑵ C語言怎麼調用windows系統播放器播放指定路徑的MP3音樂文件

#include <mmsystem.h>
#pragma comment (lib, "winmm.lib")
main()
{
mciSendString("play 1.mp3 ", NULL, 0, NULL);//播放

}

⑶ C語言實現音樂播放器-MCI mcisendString

本次的實訓的mp3播放器主要涉及到的內容如下:
MCI API :負責音樂的播放,暫停,繼續,停止等功能

2)鏈表的構建

3)文件讀取問題
文件存儲有很多種方式,將數據寫入文件時可以以空格或者回車為結束。
在讀取時,不管是硬fscanf還是gets()進行讀取,都要注意一點,以gets為例,gets是讀到回車符號結尾,但是回車符號會被讀取進去。也就是說,需要將讀取到的字元串進行處理,最後一個字元要置為『0』;一定要注意這個問題。
還有一個_finddata這個結構體的問題:

此外由於在win10系統下不知道是我個人原因還是大部分人都有的的問題在編譯時findnext會報錯, 因為_findnext()返回類型為intptr_t而非long型,從「intptr_t」轉換到「long」丟失了數據。只需要把一般寫的:

long _findfirst( char *filespec, struct _finddata_t fileinfo );
返回值:
如果查找成功的話,將返回一個long型的唯一的查找用的句柄(就是一個唯一編號)。這個句柄將在_findnext函數中被使用。若失敗,則返回-1。
參數:
filespec:標明文件的字元串,可支持通配符。比如:
.c,則表示當前文件夾下的所有後綴為C的文件。
fileinfo :這里就是用來存放文件信息的結構體的指針。這個結構體必須在調用此函數前聲明,不過不用初始化,只要分配了內存空間就可以了。
函數成功後,函數會把找到的文件的信息放入這個結構體中。

int _findnext( long handle, struct _finddata_t *fileinfo );
返回值:
若成功返回0,否則返回-1。
參數:
handle:即由_findfirst函數返回回來的句柄。
fileinfo:文件信息結構體的指針。找到文件後,函數將該文件信息放入此結構體中。

int _findclose( long handle );
返回值:成功返回0,失敗返回-1。
參數: handle :_findfirst函數返回回來的句柄

一下為一個簡化的版本主要是文件操作:

function.h

function.c

main.c

⑷ C語言 怎麼編程播放WAV音樂

可以使用PlaySound()函數播放聲音文件,

該函數原型位於#include<mmsystem.h>中,

函數原型為:BOOLPlaySound(LPCSTRpszSound,HMODULEhmod,DWORDfdwSound);

參數pszSound是要播放聲音的文件名,

只支持WAV等格式的文件

參數hmod是應用程序的實例句柄,一般傳遞NULL就可以;

參數fdwSound是標志的組合掩碼,

可選值有SND_FILENAME、SND_ASYNC、SND_SYNC等。

SND_FILENAME表示pszSound參數指定的是文件名(pszSound還可以指定資源、內存音樂、系統音樂等等);

SND_ASYNC:用非同步方式播放聲音,PlaySound函數在開始播放後立即返回;

SND_SYNC:同步播放聲音,在播放完後PlaySound函數才返回;

SND_LOOP一遍遍的重復播放聲音,必須與SND_ASYNC標志一塊使用。

【2、使用舉例】
PlaySound(TEXT("C:\WINDOWS\Media\WindowsXP啟動.wav"),NULL,SND_FILENAME|SND_SYNC);

熱點內容
信用卡一般的原始密碼是多少 發布:2024-11-27 10:28:32 瀏覽:991
安卓的程序結構是什麼 發布:2024-11-27 10:28:29 瀏覽:269
住房貸款還完了如何解壓 發布:2024-11-27 10:28:27 瀏覽:576
手動上傳發票 發布:2024-11-27 10:23:26 瀏覽:990
我的世界寬頻能開伺服器嗎 發布:2024-11-27 10:23:21 瀏覽:876
移動存儲器是什麼 發布:2024-11-27 10:04:08 瀏覽:876
linux重裝linux 發布:2024-11-27 09:46:25 瀏覽:558
電腦玩雲伺服器 發布:2024-11-27 09:19:22 瀏覽:66
蘋果什麼助手能和安卓互通 發布:2024-11-27 09:18:47 瀏覽:58
android花屏 發布:2024-11-27 09:18:38 瀏覽:125