c语言实现的音乐播放器

本次培训的mp3播放器主要涉及以下内容:

MCI API:负责音乐播放、暂停、继续、停止等功能。

2)链表的构建

3)文件读取问题

存储文件有很多种方法。将数据写入文件时,可以用空格或回车结束。

在阅读的时候,无论是硬fscanf还是gets(),都要注意一点。以gets为例,gets读取回车符的结尾,但是会读取回车符。换句话说,需要对读取的字符串进行处理,最后一个字符要设置为‘0’;一定要注意这个问题。

structure _finddata也有一个问题:

另外,在win10系统下,不知道是我个人的错还是大多数人都有的问题。findnext在编译时会报错,因为_findnext()的返回类型是intptr_t而不是long,从“intptr_t”转换为“long”时数据会丢失。只是把一般的写法:

long _findfirst( char *filespec,struct _ find data _ t fileinfo);

返回值:

如果搜索成功,它将返回一个long类型的唯一句柄(即唯一编号)。这个句柄将在_findnext函数中使用。如果失败,则返回-1。

参数:

Filespec:表示文件的字符串,可以支持通配符。例如,。c表示当前文件夹中所有后缀为c的文件。

Fileinfo:这是指向用于存储文件信息的结构的指针。这个结构必须在调用这个函数之前声明,但是只要分配了内存空间,它就不需要初始化。

函数成功后,会将找到的文件的信息放入这个结构中。

int _findnext(长句柄,struct _ find data _ t * fileinfo);

返回值:

如果成功,返回0,否则返回-1。

参数:

Handle:由_findfirst函数返回的句柄。

指向文件信息结构的指针。找到文件后,该函数将文件信息放入这个结构中。

int _findclose(长句柄);

返回值:成功为0,失败为-1。

参数:handle:由_ findfirst函数返回的句柄。

我们来想一个简化版,主要是文件操作:

函数. h

功能. c

主网站