c语言实现的音乐播放器
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
主网站