使用了Macos自带的说话命令:say “Hello world”
#include <iostream>
#include <string>
#include <unistd.h> // unix/linux 系统头文件
using namespace std;
// function prototype
void countdown(unsigned int limit);
int main(){
cout << "Enter the number of seconds for the countdown: "; // I/O
unsigned int limit;
cin >> limit;
cout << "Countdown begin..." << endl;
countdown(limit); // call function
cout << "Countdown finish" << endl;
return 0;
}
void countdown(unsigned int limit) {
const string command_source = "say"; // command constant
for (int i = 0; i < limit; i++) {
string command_content = " \"" + to_string(limit - i) + "\""; // to_string(type) 其他类型转string对象
string command = command_source + command_content; // adding
cout << limit - i << "s" << endl;
system(command.c_str()); // string.c_str() 把string对象转为const char *
usleep(0.9 * 1e6); // time sleep - 0.9s
}
system(R"(say "The countdown is over")");
}