C++播放语音 (女声)
原理:通过system()函数创建vbs脚本,播放声音。
//#include<cstdio>
//#include<windows.h>
void PrintVoice(const char* a)
{
FILE*fp=fopen("voice.vbs","w");
if(fp!=NULL)
{
fprintf(fp,"CreateObject(\"SAPI.Spvoice\").Speak\"%s\"",a);
fclose(fp);
system("voice.vbs");
system("del voice.vbs");
}
}
此函数可直接使用,示例如下 :
#include<cstdio>
#include<windows.h>
using namespace std;
void PrintVoice(const char* a)
{
FILE*fp=fopen("voice.vbs","w");
if(fp!=NULL)
{
fprintf(fp,"CreateObject(\"SAPI.Spvoice\").Speak\"%s\"",a);
fclose(fp);
system("voice.vbs");
system("del voice.vbs");
}
}
int main()
{
PrintVoice("Hello World!");
Sleep(400);
PrintVoice("你好");
//system("pause");
return 0;
}
该文章展示了一个C++函数,通过创建VBScript文件并调用SAPI.Spvoice对象来播放声音。在主函数中,它演示了如何播放HelloWorld!和你好这两个语音片段。程序完成后,还会自动删除生成的脚本文件。
2万+





