使用C语言播放一首音乐

使用C语言播放一首音乐

播放音乐

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

第一节 代码的组成

#define use_CRT_SECURE_NO_WARNINGS

#include

#include

#include

#include

#include

#include

#include

#include

#include"resource.h"

#pragma comment(lib,"winmm.lib")

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

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

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

(前方高能!!)

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

第二节 加载图片

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

IMAGE img;//即说明一下,告诉计算机我们要加载图片loadimage(&img,“在这里填你的图片地址(相对路径或者绝对路径都可以)”);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

#include

#include

#include

#include

#include

#include

#include

#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

猜你喜欢 💖

cs是什么材质(什么是CS材质?CS材质的特点及应用解析)
beat365官方app下载手机版

cs是什么材质(什么是CS材质?CS材质的特点及应用解析)

📅 08-07 👁️ 9850
为什么下载不能立刻到达最快速度——从一个现象看拥塞控制算法
怎么查看自己的电子邮箱号是多少?如何注册手机邮箱账号
beat365亚洲体育官网

怎么查看自己的电子邮箱号是多少?如何注册手机邮箱账号

📅 07-03 👁️ 8136