C++ 变量的输入输出教程

一、变量的基本概念

在 C++ 中,变量是用于存储数据的命名内存位置。在使用变量之前,需要先声明它的类型和名称,这样编译器才能为其分配适当大小的内存空间。例如:

cpp 复制代码
int age;  // 声明一个整型变量 age
double salary;  // 声明一个双精度浮点型变量 salary
char grade;  // 声明一个字符型变量 grade

在上述代码中,intdoublechar 是变量的类型,agesalarygrade 是变量的名称。

二、变量的输出

在 C++ 里,标准输出流 cout 常被用于将变量的值输出到控制台。cout 属于 <iostream> 头文件中的对象,要使用它,需要在代码开头包含该头文件。同时,cout 借助插入运算符 << 来输出变量的值。

2.1 输出单个变量

以下是输出不同类型变量的示例:

cpp 复制代码
#include <iostream>

int main() {
    int number = 10;
    double price = 9.99;
    char letter = 'A';

    std::cout << "整数变量的值是: " << number << std::endl;
    std::cout << "浮点变量的值是: " << price << std::endl;
    std::cout << "字符变量的值是: " << letter << std::endl;

    return 0;
}

代码解释

  • #include <iostream>:包含标准输入输出流的头文件。
  • std::cout:标准输出流对象。
  • <<:插入运算符,用于将变量的值插入到输出流中。
  • std::endl:换行符,使输出换行。

2.2 输出多个变量

可以使用多个 << 运算符连续输出多个变量:

cpp 复制代码
#include <iostream>

int main() {
    int x = 5;
    int y = 3;

    std::cout << "x 的值是: " << x << ", y 的值是: " << y << std::endl;

    return 0;
}

三、变量的输入

标准输入流 cin 用于从控制台读取用户输入的数据,并将其存储到变量中。cin 同样属于 <iostream> 头文件,使用提取运算符 >> 来读取输入。

3.1 输入单个变量

以下是读取不同类型变量的示例:

cpp 复制代码
#include <iostream>

int main() {
    int age;
    double weight;
    char initial;

    std::cout << "请输入你的年龄: ";
    std::cin >> age;

    std::cout << "请输入你的体重: ";
    std::cin >> weight;

    std::cout << "请输入你的名字首字母: ";
    std::cin >> initial;

    std::cout << "你的年龄是: " << age << ", 体重是: " << weight << ", 名字首字母是: " << initial << std::endl;

    return 0;
}

代码解释

  • std::cin:标准输入流对象。
  • >>:提取运算符,用于从输入流中提取数据并存储到变量中。

3.2 输入多个变量

可以使用多个 >> 运算符连续读取多个变量,输入时需用空格或换行分隔不同的值:

cpp 复制代码
#include <iostream>

int main() {
    int a, b;

    std::cout << "请输入两个整数,用空格分隔: ";
    std::cin >> a >> b;

    std::cout << "你输入的两个整数分别是: " << a << " 和 " << b << std::endl;

    return 0;
}

四、输入输出注意事项

4.1 输入验证

当用户输入的数据类型与变量类型不匹配时,可能会导致程序出现异常。因此,在实际应用中,需要对输入进行验证。例如,当期望输入整数时,用户输入了字符,cin 会进入错误状态。可以通过以下方式进行验证和处理:

cpp 复制代码
#include <iostream>

int main() {
    int num;
    std::cout << "请输入一个整数: ";
    while (!(std::cin >> num)) {
        std::cin.clear();  // 清除错误标志
        std::cin.ignore(10000, '\n');  // 忽略缓冲区中的无效输入
        std::cout << "输入无效,请输入一个整数: ";
    }
    std::cout << "你输入的整数是: " << num << std::endl;
    return 0;
}

4.2 字符串输入

如果要输入包含空格的字符串,使用 cin 会有问题,因为 cin 会在遇到空格时停止读取。可以使用 std::getline 函数来读取整行字符串:

cpp 复制代码
#include <iostream>
#include <string>

int main() {
    std::string sentence;
    std::cout << "请输入一个包含空格的句子: ";
    std::getline(std::cin, sentence);
    std::cout << "你输入的句子是: " << sentence << std::endl;
    return 0;
}

通过以上内容,你可以掌握 C++ 中变量的输入输出基本操作。

相关推荐
qq_454175797 分钟前
c++学习-this指针
开发语言·c++·学习
超闻逸事1 小时前
【题解】[UTPC2024] C.Card Deck
c++·算法
暴力求解1 小时前
C++类和对象(上)
开发语言·c++·算法
让我们一起加油好吗2 小时前
【基础算法】枚举(普通枚举、二进制枚举)
开发语言·c++·算法·二进制·枚举·位运算
大锦终2 小时前
【C++】特殊类设计
开发语言·c++
泽02022 小时前
C++之STL--list
开发语言·c++·list
Dovis(誓平步青云)4 小时前
探索C++标准模板库(STL):String接口的底层实现(下篇)
开发语言·c++·stl·string
KyollBM5 小时前
【CF】Day75——CF (Div. 2) B (数学 + 贪心) + CF 882 (Div. 2) C (01Trie | 区间最大异或和)
c语言·c++·算法
feiyangqingyun5 小时前
Qt/C++开发监控GB28181系统/取流协议/同时支持udp/tcp被动/tcp主动
c++·qt·udp·gb28181
CV点灯大师5 小时前
C++算法训练营 Day10 栈与队列(1)
c++·redis·算法