gpt4 book ai didi

c++ - 如果用户输入带小数的数字,如何显示 float ;如果用户使用函数重载输入整数,如何显示整数

转载 作者:太空宇宙 更新时间:2023-11-04 11:36:38 26 4
gpt4 key购买 nike

我目前正在通过观看 bucky's C++ tutorial 来学习 C++ .

在教程中,他展示了如何使用函数重载但是 ab 的变量值在他的教程视频中是固定的。我想知道如果用户需要输入一些东西(小数或整数)会发生什么以及如何让程序识别输入数据是 int 还是 float。

这是教程视频中的代码:

#include <iostream>
using namespace std;

void printnumber(int x){
cout << "I am printing an integer " <<x << endl;
}

void printnumber(float x){
cout << "I am printing an float: " << x << endl;
}


int main(){

int a = 54;
float b= 32.4896;

printnumber(a);
printnumber(b);

}

虽然这是我创建的代码:

#include <iostream>
using namespace std;
int a;
float b;

void printnumber(int x){
cout << "I am printing an integer " <<x << endl;
}

void printnumber(float x){
cout << "I am printing an float: " << x << endl;
}


int main(){

cout << "enter a whole number or a number with decimal: ";
cin >> ; //what will i put here?

printnumber(a);
printnumber(b);

}

最佳答案

这并不像人们想象的那么微不足道。一种方法是将输入作为字符串读取,并查看该字符串是否包含小数点(这会在小数点为逗号的语言环境中引起问题)。

另一种解决方案是读取字符串,然后尝试 convert it to a floating point value , 如果失败则 convert it to an integer .

我会推荐最后一种方法。


或者为了简单起见,只指示用户输入一个整数后跟一个浮点值:

int a;
std::cout << "Enter an integer value: ";
std::cin >> a;

float b;
std::cout << "Enter a floating point value: ";
std::cin >> b;

然后希望用户实际输入正确的值。

关于c++ - 如果用户输入带小数的数字,如何显示 float ;如果用户使用函数重载输入整数,如何显示整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22858398/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com