cctype 库
isalnum(char c):判断字符是否是字母或数字。
isalpha(char c):判断字符是否是字母。
isdigit(char c):判断字符是否是数字。
islower(char c):判断字符是否是小写字母。
isupper(char c):判断字符是否是大写字母。
isspace(char c):判断字符是否是空白字符(空格、制表符、换行符等)。
tolower(char c):将字符转换为小写字母。
toupper(char c):将字符转换为大写字母。
?运算符
expression1 ? expression2 : expression3
如果expression1 为true 则表达式的值为expression2 ,否则为expression3.
continue和break
continue跳过循环体剩余部分,开始新一轮循环
break跳过循环剩余部分,到达下一条语句
输错误内容重新输入:
while (!cin >> arr[i]) { cin.clear(); //重置shuru while (cin.get() != '\n') continue; }
简单文件输入/输出:
<1>文件输出(写入)
头文件包含fstream
定义一个用于输出的ofstream类
用.open("filename")将文件和定义的ofstream类关联起来
#include <iostream> #include <fstream> int main() { std::ofstream outFile("output.txt"); // 创建一个输出文件流对象 if (outFile.is_open()) { // 判断是否成功打开文件 outFile << "Hello, File Output!" << std::endl; // 向文件中写入数据 outFile.close(); // 关闭文件流 std::cout << "文件写入完成" << std::endl; } else { std::cout << "无法打开文件" << std::endl; } return 0; }
注意:"打开已有文件,以接受写入时,默认将其长度截断为零,因此原来的内容将会丢失.因此程序原打开文件时需要检查文件是否存在.或者打开已有文件,是否有权限进行访问,会失败,需要检测打开文件操作是否成功
检查文件是否存在:
#include <iostream> #include <fstream> int main() { std::string filename = "existing_file.txt"; std::ifstream file(filename); if (file) { // 文件存在,可以进行读取操作 std::cout << "文件存在" << std::endl; } else { // 文件不存在 std::cout << "文件不存在" << std::endl; } return 0; }
检测打开文件操作是否成功:
#include <iostream> #include <fstream> int main() { std::string filename = "nonexistent_file.txt"; std::ofstream file(filename); if (file.is_open()) { // 文件成功打开 std::cout << "文件打开成功" << std::endl; // 可以进行写入操作 file << "写入内容" << std::endl; file.close(); } else { // 文件无法打开 std::cout << "文件打开失败" << std::endl; } return 0; }
<2>文件输入(读取)
#include <iostream> #include <fstream> #include <string> int main() { std::ifstream inFile("input.txt"); // 创建一个输入文件流对象 if (inFile.is_open()) { // 判断是否成功打开文件 std::string line; while (std::getline(inFile, line)) { // 逐行读取文件内容 std::cout << line << std::endl; // 输出每一行的内容 } inFile.close(); // 关闭文件流 } else { std::cout << "无法打开文件" << std::endl; } return 0; }
标准的检测文件输出没问题(没到EOF,类型不匹配,文件受损)代码
while (inFile >> value)