c語言能傳聲嗎,c語言能傳聲嗎知乎

本文目錄一覽:

c語言調用聲音的函數?

兩個聲音函數sound(),nosound()和延遲函數delay()由函數庫

提供。

函數名:

sound

能:

以指定頻率打開PC揚聲器

法:

void

sound(unsigned

frequency);

程序例:

#include

int

main(void)

{

sound(7);

delay(10000);

nosound();

return

0;

}

如何在C語言中加入聲音

這個不是用一句話兩句話就能說清楚的

播放*.WMA文件的程序,在播放前首先需要在硬體埠210H~260H中查找是否安裝了音效卡,然後根據是否是立體聲,採樣精度的不同來提取聲音樣本,然後通過改寫時鐘中斷並將數據輸出到音效卡數據輸出埠來播放音樂.

建議你最好看一些相關方面的書

C語言發聲函數

TC 試:

#includedos.h

#includeconio.h

#includestdlib.h

/* this founction plays sound until hit any key */

void mysound()

{

long freq ;

while(!kbhit()){/* while no keyboard hit, play sound */

for(freq=200L;freq2000L;freq+=200L){

sound(freq);/*play freq sound*/

delay(200);/*delay 200ms*/

}

}

nosound();/* stop playing */

}

void main()

{

mysound() ;

}

—————

VC++ 試:

#include stdio.h

#include stdlib.h

#include windows.h

main()

{

Beep(523,500);

Beep(587,500);

Beep(659,500);

Beep(698,500);

Beep(784,500);

Sleep(500);

Beep(523,500);

Beep(587,500);

Beep(659,500);

Beep(698,500);

Beep(784,500);

}

——

wintc 試驗上兩個。

如何用C語言播放一段音頻呢

可以使用PlaySound()函數播放wav聲音,該函數原型位於windows.h中,

函數原型為:

BOOL PlaySound(LPCSTR pszSound, HMODULE hmod,DWORD fdwSound);

參數pszSound是指定了要播放聲音的字元串,該參數可以是WAVE文件的名字,或是WAV資源的名字,或是內存中聲音數據的指針,或是在系統註冊表WIN.INI中定義的系統事件聲音。如果該參數為NULL則停止正在播放的聲音。

參數hmod是應用程序的實例句柄,當播放WAV資源時要用到該參數,否則它必須為NULL。

參數fdwSound是標誌的組合,各種可選的標誌及意義如下所示。若成功則函數返回TRUE,否則返回FALSE。

播放標誌以及含義:

SND_APPLICATION

用應用程序指定的關聯來播放聲音。

SND_ALIAS

pszSound參數指定了註冊表或WIN.INI中的系統事件的別名。

SND_ALIAS_ID

pszSound參數指定了預定義的聲音標識符。

SND_ASYNC

用非同步方式播放聲音,PlaySound函數在開始播放後立即返回。

SND_FILENAME

pszSound參數指定了WAVE文件名。

SND_LOOP

重複播放聲音,必須與SND_ASYNC標誌一塊使用。

SND_MEMORY

播放載入到內存中的聲音,此時pszSound是指向聲音數據的指針。

SND_NODEFAULT

不播放預設聲音,若無此標誌,則PlaySound在沒找到聲音時會播放預設聲音。

SND_NOSTOP

PlaySound不打斷原來的聲音播出並立即返回FALSE。

SND_NOWAIT

如果驅動程序正忙則函數就不播放聲音並立即返回。

SND_PURGE

停止所有與調用任務有關的聲音。若參數pszSound為NULL,就停止所有的聲音,否則,停止pszSound指定的聲音。

SND_RESOURCE

pszSound參數是WAVE資源的標識符,這時要用到hmod參數。

SND_SYNC

同步播放聲音,在播放完後PlaySound函數才返回。

************************************************************

例如我想播放在C:\WINDOWS\Media目錄中的 Windows XP 啟動.wav 文件

程序如下:

#include windows.h

#include stdlib.h

int main(int argc, char* argv[])

{

PlaySound(“C:\\WINDOWS\\Media\\Windows XP 啟動.wav”, NULL, SND_FILENAME | SND_ASYNC);

system(“pause”);

return 0;

}

c語言中讓電腦發出聲音的是什麼

這個函數是直接操作PC的喇叭,讓其以一定的頻率發出聲音

參數為頻率,可以這樣用 sound(100);

改變參數大小可以發出不同的音

C語言中的這個函數是不能用來播放指定的音頻文件的,如果需要,可以調用系統API函數。

C 語言:能不能用C語言編寫程序來播放音頻文件?

一.在程序中直接播放聲音文件

在VC++ 中的多媒體動態連接庫中提供了一組與音頻設備有關的函數。利用這些函數可以方便地播放聲音。最簡單的播放聲音方法就是直接調用VC++中提供的聲音播放函數BOOL sndPlaySound ( LPCSTR lpszSound,UINT fuSound ); 或BOOL PlaySound( LPCSTR lpszSound, HMODULE hmod, DWORD fuSound );其中參數lpszSound是需要播放聲音的.W***文件的路徑和文件名, hmod在這裡為NULL,fuSound是播放聲音的標誌,詳細說明請參考VC++中的幫助。 例如播放C:soundmusic.wav可以用sndPlaySound (“c:\sound\music.wav”,SND_ASYNC);或PlaySound(“c:\sound\music.wav”,NULL, SND_ASYNC|SND_NODEFAULT );如果沒有找到music.wav文件,第一種格式將播放系統默認的聲音,第二種格式不會播放系統默認的聲音。

二.將聲音文件加入到程序中

在VC++的程序設計中,可以利用各種標準的資源,如點陣圖,菜單,對話框等。同時VC++也允許用戶自定義資源,因此我們可以將聲音文件作為用戶自定義資源加入程序資源文件中,經過編譯連接生成EXE文件,實現無.W***文件的聲音播放。要實現作為資源的聲音文件的播放,首先要在資源管理器中加入待播放的聲音文件。

具體步驟入下:

1.獲得包含資源的模塊句柄:

HMODULE hmod=AfxGetResourceHandle();

2.檢索資源塊信息:

HRSRC hSndResource=FindResource(hmod,MAKEINTRESOURCE(IDR_W***E1),_T(“W***E”));

3. 裝載資源數據並加鎖:

HGLOBAL hGlobalMem=LoadResource(hmod,hSndResource);

LPCTSTR lpMemSound=(LPCSTR)LockResource(hGlobalMem);

4.播放聲音文件:

sndPlaySound(lpMemSound,SND_MEMORY));

5.釋放資源句柄:

FreeResource(hGlobalMem);

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/232198.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-11 12:50
下一篇 2024-12-11 12:50

相關推薦

  • AES加密解密演算法的C語言實現

    AES(Advanced Encryption Standard)是一種對稱加密演算法,可用於對數據進行加密和解密。在本篇文章中,我們將介紹C語言中如何實現AES演算法,並對實現過程進…

    編程 2025-04-29
  • 學習Python對學習C語言有幫助嗎?

    Python和C語言是兩種非常受歡迎的編程語言,在程序開發中都扮演著非常重要的角色。那麼,學習Python對學習C語言有幫助嗎?答案是肯定的。在本文中,我們將從多個角度探討Pyth…

    編程 2025-04-29
  • Python被稱為膠水語言

    Python作為一種跨平台的解釋性高級語言,最大的特點是被稱為”膠水語言”。 一、簡單易學 Python的語法簡單易學,更加人性化,這使得它成為了初學者的入…

    編程 2025-04-29
  • OpenJudge答案1.6的C語言實現

    本文將從多個方面詳細闡述OpenJudge答案1.6在C語言中的實現方法,幫助初學者更好地學習和理解。 一、需求概述 OpenJudge答案1.6的要求是,輸入兩個整數a和b,輸出…

    編程 2025-04-29
  • Python按位運算符和C語言

    本文將從多個方面詳細闡述Python按位運算符和C語言的相關內容,並給出相應的代碼示例。 一、概述 Python是一種動態的、面向對象的編程語言,其按位運算符是用於按位操作的運算符…

    編程 2025-04-29
  • Python語言由荷蘭人為中心的全能編程開發工程師

    Python語言是一種高級語言,很多編程開發工程師都喜歡使用Python語言進行開發。Python語言的創始人是荷蘭人Guido van Rossum,他在1989年聖誕節期間開始…

    編程 2025-04-28
  • Python語言設計基礎第2版PDF

    Python語言設計基礎第2版PDF是一本介紹Python編程語言的經典教材。本篇文章將從多個方面對該教材進行詳細的闡述和介紹。 一、基礎知識 本教材中介紹了Python編程語言的…

    編程 2025-04-28
  • Python語言實現人名最多數統計

    本文將從幾個方面詳細介紹Python語言實現人名最多數統計的方法和應用。 一、Python實現人名最多數統計的基礎 1、首先,我們需要了解Python語言的一些基礎知識,如列表、字…

    編程 2025-04-28
  • Python作為中心語言,在編程中取代C語言的優勢和挑戰

    Python一直以其簡單易懂的語法和高效的編碼環境而著名。然而,它最近的發展趨勢表明Python的使用範圍已經從腳本語言擴展到了從Web應用到機器學習等廣泛的開發領域。與此同時,C…

    編程 2025-04-28
  • Python基礎語言

    Python作為一種高級編程語言擁有簡潔優雅的語法。在本文中,我們將從多個方面探究Python基礎語言的特點以及使用技巧。 一、數據類型 Python基礎數據類型包括整數、浮點數、…

    編程 2025-04-28

發表回復

登錄後才能評論