📜  c++ 读取控制台输入 - C++ (1)

📅  最后修改于: 2023-12-03 15:29:53.143000             🧑  作者: Mango

C++ 读取控制台输入

在 C++ 中,我们可以使用标准输入流 std::cin 来读取控制台输入。

读取一个整数

要读取一个整数,可以使用 >> 运算符。例如:

int n;
std::cin >> n;

这将从控制台读取一个整数,并将其存储在变量 n 中。

如果需要读取多个整数,可以一次性读取它们:

int a, b, c;
std::cin >> a >> b >> c;

依次读取输入中的三个整数,并将它们分别存储在变量 abc 中。

读取一个字符串

要读取一个字符串,可以使用 >> 运算符。例如:

std::string s;
std::cin >> s;

这将从控制台读取一个字符串,并将其存储在变量 s 中。需要注意的是,std::cin 默认以空格为分隔符,因此它只能读取输入中的第一个字符串。如果需要读取整个输入行,需要使用 std::getline 函数:

std::string s;
std::getline(std::cin, s);

这将读取整个输入行,并将其存储在变量 s 中。

读取一个字符

要读取一个字符,可以使用 getchar 函数或者 std::cin.get 函数。例如:

char c;
c = getchar();

char d;
std::cin.get(d);

这将从控制台读取一个字符,并将其存储在变量 cd 中。

需要注意的是,getchar 函数只能读取一个字符,而 std::cin.get 函数可以读取指定数量的字符。

读取一个布尔值

要读取一个布尔值,可以使用 >> 运算符。例如:

bool b;
std::cin >> b;

这将从控制台读取一个布尔值,并将其存储在变量 b 中。需要注意的是,C++ 中将任何非零值视为 true,将零视为 false。因此,如果输入中包含非零值,变量 b 的值将为 true;如果输入中包含零,变量 b 的值将为 false。

读取一个浮点数

要读取一个浮点数,可以使用 >> 运算符。例如:

float f;
std::cin >> f;

这将从控制台读取一个浮点数,并将其存储在变量 f 中。

需要注意的是,C++ 中默认将浮点数按照双精度存储。如果需要将浮点数按照单精度存储,可以使用 std::cin.precision 函数和 std::cin.setf 函数来进行设置:

std::cin.precision(7);
std::cin.setf(std::ios::fixed);
float f;
std::cin >> f;

这将从控制台读取一个单精度浮点数,并将其存储在变量 f 中。std::cin.precision(7) 设置精度为 7,std::cin.setf(std::ios::fixed) 设置以固定精度输出。

总结

以上就是 C++ 读取控制台输入的方法。使用这些方法可以方便地读取各种类型的输入,从而实现不同的功能。