21xrx.com
2024-12-22 22:33:42 Sunday
登录
文章检索 我的文章 写文章
C++ 中如何进行 ASCII 码转数字操作
2023-07-02 16:15:29 深夜i     --     --
C++ ASCII 转换 数字操作

在 C++ 中,ASCII 码转数字操作是非常常见的一个操作。这个操作会将一个 ASCII 码的字符转换成对应的整数值。这个操作能够帮助我们将 ASCII 码中的数字字符转换成数字,比如将字符 ‘1’ 转换成数字 1。以下是在 C++ 中进行 ASCII 码转数字操作的一些方法。

1. 函数 atoi()

函数 atoi() 可以将字符串(或字符数组)中的数字字符转换成整数。该函数会从字符串中提取数字字符,并将其转换成对应的整数。例如,下面的代码演示了如何使用 atoi() 函数将字符串 "123" 转换成整数 123。


#include <iostream>

#include <cstdlib>

using namespace std;

int main()

{

  char str[] = "123";

  int num = atoi(str);

  cout << num << endl;

  return 0;

}

2. 函数 stoi()

函数 stoi() 是 C++11 引入的一个 string 类的成员函数。该函数可以将 string 对象中的数字字符转换成整数。该函数和 atoi() 函数功能基本相同,但是它更加严格,仅支持将数字字符转换成整数。例如,下面的代码演示了如何使用 stoi() 函数将 string 对象中的数字字符转换成整数。


#include <iostream>

#include <string>

using namespace std;

int main()

{

  string str = "123";

  int num = stoi(str);

  cout << num << endl;

  return 0;

}

3. 字符减法操作

在 ASCII 码中,数字字符的编码值是连续的。即字符 ‘0’ 的编码值为 48,而字符 ‘1’ 的编码值为 49,字符 ‘2’ 的编码值为 50,以此类推。因此,我们可以使用字符减法操作来将数字字符转换成数字。例如,下面的代码演示了如何使用字符减法操作将字符 ‘1’ 转换成数字 1。


#include <iostream>

using namespace std;

int main()

{

  char c = '1';

  int num = c - '0';

  cout << num << endl;

  return 0;

}

总之,以上这些方法都能够很好地将 ASCII 码中的数字字符转换成整数。其中,函数 atoi() 和 stoi() 是比较常用的方法,特别是在需要将字符串中的数字字符转换成整数时。而使用字符减法操作则适用于只需要将单个字符转换成数字的情况。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复