繁体   English   中英

输入和C ++中的字符

[英]Inputs along with characters in C++

我一直在尝试编写一个编,它以Rs50000的形式接受大学费用作为输入,我只想使用积分部分进行计算。 我怎样才能做到这一点?? 这可能吗??

#include<iostream>
using namespace std;
int main()
{
   int fee;
   cin >> Rs >> fee;
   return 0;
}

为了读取字符串并按照您的描述进行处理,应该执行以下操作。

std::string input;
std::cin >> input;
int fee = atoi(input.substr(2).c_str());

此代码从stdin输入。 然后它将费用(第3个字符结尾)解析为一个整数。 当然,还有其他方法可以做到这一点。 由于C语言的背景,我是c_str()atoi()的爱好者,但是stringstream还是一样。

关于原始代码的注释。 很自然地认为您会两次流式传输:
std::cin >> Rs >> fee; 因为一部分是字符串,另一部分是整数。 但是, std::cin流由空格分隔。

希望这可以帮助!

是的,这是可能的,并且有很多方法可以做您想要的事情,这是一种方法。 将输入作为字符串并使用substr()删除“ Rs”。 然后将其转换为int。

#include <iostream>
#include <string>
#include <sstream>
using namespace std;

int main()
{
    stringstream stream;
    string amount,str;
    int fee;
    getline (cin, amount);
    str = amount.substr(2);
    stream << str;
    stream >> fee;

    cout << "Fee is : " << fee+1 << "\n"; //fee
    return 0;
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM