播放音乐

大家好,我是辰梦!
很久没有写过文章了,在这期间,我写了很多代码,但很多都是别人写的,我想了又想,今天把我觉得比较好的代码给大家分享出来!
相信大家也找了很久的C语言音乐播放器,在这里,我就抛转引玉,虽不是音乐播放器,但也是做音乐播放器的第一步!

第一节 代码的组成

#define use_CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<graphics.h>
#include<stdlib.h>
#include<conio.h>
#include<Windows.h>
#include<time.h>
#include<string.h>
#include<mmsystem.h>
#include"resource.h"
#pragma comment(lib,"winmm.lib")

这里先把头文件给粘贴下来,当然,头文件只有多的,没有少的!
多说一句:我这个代码,是在visual studio2019编辑环境下写的!
对于要写出音乐播放器,要查阅很多的专有名词,举个例子:

PlaySound(MAKEINTRESOURCE(IDR_WAVE2), NULL, SND_RESOURCE | SND_ASYNC)

这个一定要有哦~!
这行代码是播放音乐用的!
下载库EeasyX,如果有这个C语言图形库的话,恭喜你,可以不用下载其他库了
好了,我们现在进入正题!!

(前方高能!!)

哈哈哈,推明天是不可能的!
我怎么可能推到明天来做?!

第二节 加载图片

做一个C语言音乐播放器,怎么能够少了音乐的图形界面呢?
光秃秃的,肯定不好看
(网上好看的图片,有很多,自己去找)
加载图片一般分为三步走:

  1. IMAGE img;//即说明一下,告诉计算机我们要加载图片
  2. loadimage(&img,“在这里填你的图片地址(相对路径或者绝对路径都可以)”);
  3. putimage(,0 0,&img);//显示图片,控制台上显示

第一步当中的img那个其实是你输入的名字,(随便输),但是要跟后面对应哦~
putimage开头两个0,表示图片的坐标!

举个例子:(以我的代码为例,仅供参考!)

 IMAGE img;loadimage(&img, L"bg01.jpg", 770, 550);putimage(0, 0, &img);

loadimage()里面的770和550表示图片的像素,即图片的宽高。

第三节 播放音乐与完整代码

(重点来了!!)
完整代码你们是不是期待很久了呢?就像我自己,看别人的文章,直接跳到完整代码处,然后自己东一榔头西一棒的瞎操作一番,(温馨提示:别学我)
在之前,提到了PlaySound()函数,我们把它加入到实际的例子当中
如下:

 if (0 == PlaySound(MAKEINTRESOURCE(IDR_WAVE2), NULL, SND_RESOURCE | SND_ASYNC)){printf("播放失败!!");}

本人代码写的简单,大佬勿喷!!
有情提示,请将你的音乐放在资源文件里。下面请看详细操作!

  • 第一步,找到你的“资源文件”,右击,出现多个选项!

图片如下:


因为我这里加了音乐软件,所以跟你们可能不一样,但是呢?操作都一样,右键点击“资源文件”!
接着点击“新建项”,图片如下:

点击新建项之后呢?就会弹出一个窗口,我们就在“资源”>>"资源文件”,然后点击“浏览”,就可以了。
图片具体操作如下:



这样你的资源文件下就有一个文件了,还是老操作,右键点击它,然后选中它最下面的“添加资源”>>这样之后就点击“导入”,之后呢?选中“波形文件”,这里的波形文件就是指的wav格式的音乐!

(重点:一定要wav呀!!)



好了,整个文章也已经到了末尾了,最后贴出我的终极大招完整代码就基本结束了!

完整代码如下(重点!!!!)

#define use_CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<graphics.h>
#include<stdlib.h>
#include<conio.h>
#include<Windows.h>
#include<time.h>
#include<string.h>
#include<mmsystem.h>
#include"resource.h"
#pragma comment(lib,"winmm.lib")
//int r[4] = { 80,150,250,283 };//R1 R2 R3 R4....顺序
int main()
{initgraph(770, 550);IMAGE img;loadimage(&img, L"bg01.jpg", 770, 550);putimage(0, 0, &img);IMAGE play;loadimage(&play, L"play.jpg",60,60);putimage(330, 450, &play);IMAGE next;loadimage(&next, L"next.jpg", 60, 60);putimage(400, 450, &next);IMAGE last;loadimage(&last, L"last.jpg", 60, 60);putimage(260, 450, &last);
//  RECT R = { 80,150,250,283 };//矩形指针R1  80,150,250,283
//  LOGFONT f;//字体样式指针
//  gettextstyle(&f);//获取字体样式
//  wcscpy_s(f.lfFaceName, _T("宋体"));//设置字体为宋体
//  f.lfQuality = ANTIALIASED_QUALITY;//设置输出效果为抗锯齿
//  settextstyle(&f);//设置字体样式
//  settextcolor(YELLOW);//设置字体颜色
//  drawtext(_T("欢迎"), &R, DT_CENTER | DT_VCENTER | DT_SINGLELINE);//在水平区域内,即矩形区域R1,输入汉字,水平居中,垂直居中,单行显示settextcolor(WHITE);settextstyle(30, 40, L"宋体");outtextxy(160, 50, L"音乐播放器");if (0 == PlaySound(MAKEINTRESOURCE(IDR_WAVE2), NULL, SND_RESOURCE | SND_ASYNC)){printf("播放失败!!");}system("pause");closegraph();return 0;
}

仅供参考,本人经过实测(在visual studio2019环境下),完美运行 !
(有疑问,评论区见!可私信!)

参考文章:

我是参考这个文章写出来的,如果想进一步思索的话,请点击这里https://blog.csdn.net/qq_40571533/article/details/104393805?utm_source=app&app_version=4.8.0&code=app_1562916241&uLinkId=usr1mkqgl919blen

使用C语言播放一首音乐相关推荐

  1. mciSendString 多线程播放多首音乐 注意事项

    昨天晚上遇到一个问题: 使用 mciSendString  控制播放多首音乐的时候,出现最后一次播放的音乐无法通过 mciSendString ("close mp3") 关闭音乐 ...

  2. AudioContext实现同时播放两首音乐在左右音道上

    AudioContext实现同时播放两首音乐在左右音道上 直接上代码 <!DOCTYPE html> <html lang="en"><head> ...

  3. 流行歌单片机c语言编程,单片机6首音乐播放的proteus仿真电路及C语言程序设计...

    #define uchar unsigned char //定义一下方便使用 #define uint  unsigned int #define ulong unsigned long #inclu ...

  4. java学习之路之播放一首简单的音乐

    1.首先,要去网上下载个JMF工具,这个工具可以播放通常情况下的Mp3音乐文件和视频,也叫做Java媒体框架,可以去官网下载JMF官网下载,下载完之后,有个jmf的exe安装文件,双击打开进行安装,安 ...

  5. 实验十:红外遥控简单mp3播放器(2首音乐,只有旋律,播放器雏形)

    OK,今天的实验 我感觉我可以开发mp3了,哈哈 不过,我对音乐了解不多,所以都是简单的设计 功能: 1)红外遥控 2)CH-播放<生日快乐> 3)CH+播放<小星星> 4)C ...

  6. android小应用,只能播放一首歌的应用

    1.上学期,选修课为安卓,要求我们做一个小应用作为安卓的大作业,我就做了一个小小的音乐播放器,实现的功能很少,就是使用Service服务来播放一首音乐,其中用了很多菜单效果,然后主界面实现了一个画廊的 ...

  7. C语言Windows下实现音乐播放器

    前言 由于之前没有开发过Windows下跑的exe程序,听着歌,想着能不能用C语言写一个windows跑的音乐播放器呢? 于是乎便开始探寻想法的可行性,难易程度,搜寻资料了解到,可以使用EasyX图形 ...

  8. Android之播放一首简单的音乐

    1.首先,创建一个项目,名为Mp3Test,创建完之后打开res目录下的layout下的activity_main.xml文件,打开src下的MainActivity.java文件,首先,先把布局文件 ...

  9. HTML+CSS+原生JS写一个简易的音乐播放器(仅播放一首歌)

    用HTML+CSS+原生JS写一个简易的音乐播放器(仅播放一首歌) 效果如下:(鼠标点击按钮可以实现播放或暂停,按钮会旋转,实现了歌词同步,功能还需改进) 代码如下: <!DOCTYPE htm ...

最新文章

  1. 云服务器重装系统后卡顿,低延迟云服务器发生卡顿丢包检测方法
  2. Install KVM Hypervisor on arrch64 Linux Server
  3. springBoot 项目 jar/war打包 并运行
  4. IDEA常用快捷键整理20191105
  5. adroid 如何测试端口号_多进程启动设备和appium实现自动化测试
  6. 过程声明与同名事件或过程的描述不匹配_多特征结合的倾斜无人机影像匹配方法...
  7. html网页 table布局实例,HTML用Table表格对网页布局
  8. Mapxtreme Java 地图缩放,平移操作的原理和实现
  9. flow.php 漏洞,Ecshop 3.0的flow.php文件SQL注射漏洞修复
  10. c语言编程伤心代码,C语言恶作剧代码:慎用,被打了不负责
  11. Google Guice 快速入门
  12. 小程序在wxml里转数字_微信小程序 之wxml保留小数点后两位数的方法及转化为字符串的方法...
  13. 一篇论文8778个作者:人均写5个字,署名用了17页
  14. ms sql 创建表_使用MS查询创建表组合
  15. 认真过好你的二十几岁
  16. #今日论文推荐# 文字秒变3D?苹果发布最新AI生成模型GAUDI,根据文字提示创建3D场景
  17. python2升级python3语法错误总结
  18. 项目管理工具dhtmlxGantt甘特图入门教程(十五):从MS项目导入/导出(上)
  19. dijkstra算法及其堆优化
  20. DevOps之不中断服务的蓝绿部署

热门文章

  1. 【HP-MC/SG】HP-MC/SG添加LV测试
  2. CCF小白刷题之路---201809-1 卖菜(C/C++ 100分)
  3. 海量固定资产如何进行盘点?
  4. Kotlin | 关于 Lazy ,你应该了解的这些事
  5. 苹果终究拗不过拼多多,iPhone12大跌千元
  6. Bable详解和前端模块化
  7. 凯撒移位密码python_凯撒密码python拓展程序
  8. 沧小海笔记之PCIE协议解析——第三章 PCIE的数据链路层
  9. 微服务[开发生命周期]
  10. RecyclerView多种布局封装优化(雷惊风)