天天看點

使用C語言播放一首音樂播放音樂(前方高能!!)完整代碼如下(重點!!!!)

播放音樂

大家好,我是辰夢!

很久沒有寫過文章了,在這期間,我寫了很多代碼,但很多都是别人寫的,我想了又想,今天把我覺得比較好的代碼給大家分享出來!

相信大家也找了很久的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語言播放一首音樂播放音樂(前方高能!!)完整代碼如下(重點!!!!)

哈哈哈,推明天是不可能的!

我怎麼可能推到明天來做?!

第二節 加載圖檔

做一個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("播放失敗!!");
	}
           

本人代碼寫的簡單,大佬勿噴!!

有情提示,請将你的音樂放在資源檔案裡。下面請看詳細操作!

  • 第一步,找到你的“資源檔案”,右擊,出現多個選項!

圖檔如下:

使用C語言播放一首音樂播放音樂(前方高能!!)完整代碼如下(重點!!!!)

因為我這裡加了音樂軟體,是以跟你們可能不一樣,但是呢?操作都一樣,右鍵點選“資源檔案”!

接着點選“建立項”,圖檔如下:

使用C語言播放一首音樂播放音樂(前方高能!!)完整代碼如下(重點!!!!)

點選建立項之後呢?就會彈出一個視窗,我們就在“資源”>>"資源檔案”,然後點選“浏覽”,就可以了。

圖檔具體操作如下:

使用C語言播放一首音樂播放音樂(前方高能!!)完整代碼如下(重點!!!!)
使用C語言播放一首音樂播放音樂(前方高能!!)完整代碼如下(重點!!!!)
使用C語言播放一首音樂播放音樂(前方高能!!)完整代碼如下(重點!!!!)

這樣你的資源檔案下就有一個檔案了,還是老操作,右鍵點選它,然後選中它最下面的“添加資源”>>這樣之後就點選“導入”,之後呢?選中“波形檔案”,這裡的波形檔案就是指的wav格式的音樂!

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

使用C語言播放一首音樂播放音樂(前方高能!!)完整代碼如下(重點!!!!)
使用C語言播放一首音樂播放音樂(前方高能!!)完整代碼如下(重點!!!!)
使用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")
//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

繼續閱讀