#include #include using string = std::string; using stringv = std::string_view; void printm(stringv); void printlm(stringv); int prompti(stringv); string prompts(stringv); string promptm(stringv*, int); int main() { bool run {true}; while (run){ int input { prompti(promptm(new stringv[] { "Enter an option:", "0) Say hello.", "*) Exit."}, 3)) }; if (input == 0) printlm("Hello."); else{ printlm("Bye!"); run = false; } } return 0; } void printm(stringv m){ std::cout << m; } void printlm(stringv m){ printm(m); printm("\n"); } int prompti(stringv message) { int tr {}; std::cout << message; if (!(std::cin >> tr)){ std::cin.clear(); std::cin.ignore(); return -1; } return tr; } string prompt(stringv message) { string toret {""}; std::cout << message; if (!(std::cin >> toret)){ std::cin.clear(); std::cin.ignore(); return ""; } return toret; } string promptm(stringv msgs[], int l) { string tr {""}; for (int i = 0; i < l; i++) { tr.append(msgs[i]); tr.append("\n"); } return tr; }