文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

数字、字符、字符串? | C++ 与 Python 中的常用转换函数

2024-12-14 01:08

关注

计算机底层是一堆逻辑电路,记录信息只能以数值的形式。

因此对于一个字符 a ,计算机记录其为值 97 。

这个值与字符的对应关系是人们约定好的,这里使用的对应表为 ASCII Table 。

在 ASCII Table 里, a 对应 97 , b 对应 98 ... 字符 1 对应数值 49 。

之所以写这篇笔记是因为一些算法题的要求,比如,我们需要统计 26 个小写英文字母出现频率,在算法题中,完全没必要开一个哈希表,开一个 26 长度的整数数组就行。

  1. int cnt[26]; 

当我们读入一个字符时,则进行一次强制类型转换,就实现了哈希表功能。

  1. char c; 
  2. cin >> c; 
  3. cnt[c - 'a'] ++ ; 

当读入的数字是 'a' 时, 'a' - 'a' == 0 ,则实现了哈希的功能。

我不禁发问:

不熟悉的话,做题时容易被卡脖子。在此总结 C++ 和 Python。

C++

数字到字符(ASCII码)

  1. // 强制转换,根据 ASCII 码 
  2. int tmp = 97; 
  3. char ac = tmp; 
  4. cout << ac << endl;  // 输出 a 

数字到字符串(表面值)

  1. int tmp = 97; 
  2. string as = to_string(tmp); 
  3. cout << as << endl;  // 输出 97 

字符到数字(ASCII码)

  1. char a; 
  2. cin >> a; 
  3. int num1 = a - '0'
  4. int num2 = a - 'A'
  5. int num3 = a - 'a'

字符串到数字(表面值)

  1. string b; 
  2. cin >> b; 
  3. int          num4 = stoi(b); 
  4. float        num5 = stof(b); 
  5. double       num6 = stod(b); 
  6. long double  num7 = stold(b); 

Python

数字到字符(ASCII码)

  1. # 强制转换,根据 ASCII 码 
  2. tmp: int = 97 
  3. ac: str = chr(tmp) 
  4. print(ac)  # 输出 a 

数字到字符串(表面值)

  1. tmp: int = 97 
  2. a_s: str = str(tmp); 
  3. print(a_s)  # 输出 97 

字符到数字(ASCII码)

  1. a: str = 'a' 
  2. num: int = ord(a) 
  3. print(num) 

字符串到数字(表面值)

  1. b: str = "123" 
  2. c: str = "123.45" 
  3. num2: int = int(b) 
  4. num3: float = float(c) 
  5. print(num2) # 123 
  6. print(num3) # 123.45 

 

来源: Piper蛋窝 内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯