c ++如何将String转换为int(ascii代码转换为value);

时间:2017-06-09 11:16:03

标签: c++

我一直试图制作一个程序,检查一个国家身份证号码是否有效我怎么遇到一个问题,我无法在任何地方找到答案。   我使用一个字符串来存储识别码的用户输入,我需要以某种方式将字符串转换为int保持符号而不是获得ascii值。

实施例: (假设用户输入字符串persKods为111199-11111 第5个符号为9,因此年份值应输出为9而不是54,这是其ascii值)

int day,month,year;
year=this->persKods.at(4);
cout << year; // it outputs 54 instead of 9 :/

1 个答案:

答案 0 :(得分:1)

你能尝试ascci值为'0'。

#include <iostream>
using namespace std;

int main() {
    // your code goes here
    string str="111199";
    int test = str.at(4) - '0';

    cout<<test;

    return 0;
}

了解更多信息link

相关问题