当前位置 - 股票行情交易網 - 財經新聞 - C語言實現音樂播放器-MCI mcisendString

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