在 Ubuntu 中使用 C++ 进行输入输出操作,通常会用到标准库中的 <iostream> 头文件。以下是一些基本的输入输出示例:
使用 std::cout 进行输出。下面是一个简单的例子:
#include <iostream>
int main() {
    std::cout << "Hello, World!" << std::endl;
    return 0;
}
std::cout 是标准输出流对象,用于向控制台输出数据。<< 是插入运算符,用于将数据插入到输出流中。std::endl 是一个操纵器,用于插入换行符并刷新输出缓冲区。使用 std::cin 进行输入。下面是一个简单的例子:
#include <iostream>
int main() {
    int number;
    std::cout << "Enter a number: ";
    std::cin >> number;
    std::cout << "You entered: " << number << std::endl;
    return 0;
}
std::cin 是标准输入流对象,用于从控制台读取数据。>> 是提取运算符,用于从输入流中提取数据并存储到变量中。你可以使用 std::cin 和 std::cout 处理多种数据类型,例如 int、float、double、char 和 std::string:
#include <iostream>
#include <string>
int main() {
    int age;
    float height;
    double weight;
    char grade;
    std::string name;
    std::cout << "Enter your name: ";
    std::cin >> name;
    std::cout << "Enter your age: ";
    std::cin >> age;
    std::cout << "Enter your height (m): ";
    std::cin >> height;
    std::cout << "Enter your weight (kg): ";
    std::cin >> weight;
    std::cout << "Enter your grade: ";
    std::cin >> grade;
    std::cout << "Hello, " << name << "! You are " << age 
              << " years old, " << height << " meters tall, "
              << weight << " kilograms heavy, and your grade is " << grade << "." << std::endl;
    return 0;
}
有时用户可能会输入无效数据,因此检查输入是否成功是个好习惯:
#include <iostream>
#include <limits>
int main() {
    int number;
    std::cout << "Enter a number: ";
    
    while (!(std::cin >> number)) {
        std::cout << "Invalid input. Please enter an integer: ";
        
        // 清除错误状态
        std::cin.clear();
        
        // 忽略剩余的输入
        std::cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
    }
    std::cout << "You entered: " << number << std::endl;
    return 0;
}
在这个例子中,我们使用 std::cin.clear() 来清除流的错误状态,并使用 std::cin.ignore() 来忽略缓冲区中的无效输入,直到遇到换行符为止。
这些是 C++ 中基本的输入输出操作。根据需要,你可以组合使用这些技术来处理更复杂的输入输出需求。