String.at()返回时髦的数字

时间:2012-06-10 11:29:27

标签: c++

当我试图运行这段代码时,我遇到了一些故障,我无法确定原因。前两个“cout”行显示数字7和3,但是,最后一个“cout”行显示的数字通常为50-60(当我运行它时,我得到55和51,这似乎以某种方式关联一个我试图阅读的数字位。据我所知,谷歌和我手边的书籍应该是有效的,但显然我缺少了一些东西。谢谢你的时间。

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

int main()
{
    string text = "73";
    int one=0, two=0;

    cout << text.at(0) << endl;
    cout << text.at(1) << endl;
    one = text.at(0);
    two = text.at(1);
    cout << one << endl << two << endl;
    return 0;
}

1 个答案:

答案 0 :(得分:5)

程序正常运行:text.at()返回char,您隐式转换为int。然后打印该int的值,对于“7”分别为55,对于“3”分别为51(查看here)。

相关问题