偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

數(shù)字、字符、字符串? | C++ 與 Python 中的常用轉(zhuǎn)換函數(shù)

開(kāi)發(fā) 后端
計(jì)算機(jī)底層是一堆邏輯電路,記錄信息只能以數(shù)值的形式。因此對(duì)于一個(gè)字符 a ,計(jì)算機(jī)記錄其為值 97 。 這個(gè)值與字符的對(duì)應(yīng)關(guān)系是人們約定好的,這里使用的對(duì)應(yīng)表為 ASCII Table 。

[[418594]]

計(jì)算機(jī)底層是一堆邏輯電路,記錄信息只能以數(shù)值的形式。

因此對(duì)于一個(gè)字符 a ,計(jì)算機(jī)記錄其為值 97 。

這個(gè)值與字符的對(duì)應(yīng)關(guān)系是人們約定好的,這里使用的對(duì)應(yīng)表為 ASCII Table 。

在 ASCII Table 里, a 對(duì)應(yīng) 97 , b 對(duì)應(yīng) 98 ... 字符 1 對(duì)應(yīng)數(shù)值 49 。

之所以寫(xiě)這篇筆記是因?yàn)橐恍┧惴}的要求,比如,我們需要統(tǒng)計(jì) 26 個(gè)小寫(xiě)英文字母出現(xiàn)頻率,在算法題中,完全沒(méi)必要開(kāi)一個(gè)哈希表,開(kāi)一個(gè) 26 長(zhǎng)度的整數(shù)數(shù)組就行。

  1. int cnt[26]; 

當(dāng)我們讀入一個(gè)字符時(shí),則進(jìn)行一次強(qiáng)制類(lèi)型轉(zhuǎn)換,就實(shí)現(xiàn)了哈希表功能。

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

當(dāng)讀入的數(shù)字是 'a' 時(shí), 'a' - 'a' == 0 ,則實(shí)現(xiàn)了哈希的功能。

我不禁發(fā)問(wèn):

  • 上述過(guò)程的逆過(guò)程如何實(shí)現(xiàn)呢?比如給我數(shù)值 97 ,我如何才能得到其在 ASCII 表里對(duì)應(yīng)的字符 'a' ?
  • 如果在字面上轉(zhuǎn)換呢?
    • 比如給我數(shù)值 97 ,我如何才能得到字符串 "97" ?
    • 比如給我字符串 "97" ,我如何才能得到數(shù)值 97 ?

不熟悉的話(huà),做題時(shí)容易被卡脖子。在此總結(jié) C++ 和 Python。

C++

數(shù)字到字符(ASCII碼)

  1. // 強(qiáng)制轉(zhuǎn)換,根據(jù) ASCII 碼 
  2. int tmp = 97; 
  3. char ac = tmp; 
  4. cout << ac << endl;  // 輸出 a 

數(shù)字到字符串(表面值)

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

字符到數(shù)字(ASCII碼)

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

字符串到數(shù)字(表面值)

  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

數(shù)字到字符(ASCII碼)

  1. # 強(qiáng)制轉(zhuǎn)換,根據(jù) ASCII 碼 
  2. tmp: int = 97 
  3. ac: str = chr(tmp) 
  4. print(ac)  # 輸出 a 

數(shù)字到字符串(表面值)

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

字符到數(shù)字(ASCII碼)

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

字符串到數(shù)字(表面值)

  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 

 

責(zé)任編輯:武曉燕 來(lái)源: Piper蛋窩
相關(guān)推薦

2021-09-07 09:23:07

C++字符串算法

2019-03-25 20:31:58

IP地址轉(zhuǎn)換數(shù)字

2010-07-14 16:10:37

Perl

2023-12-11 15:18:03

C++字符串Unicode

2021-07-30 06:22:37

C++字符型字符串

2024-02-22 09:46:04

C++字符串格式化開(kāi)發(fā)

2023-03-06 23:05:32

MySQL字符串函數(shù)

2024-03-12 07:35:39

Python字符串列表

2009-08-06 16:01:09

C#字符串函數(shù)大全

2021-03-14 15:07:55

SQLServer數(shù)據(jù)庫(kù)字符串

2010-11-26 11:20:31

MySQL字符串處理函

2009-08-06 17:24:08

C#字符串

2010-02-02 11:27:16

C++字符串

2010-02-02 18:01:47

C++字符串替換函數(shù)

2010-02-04 17:32:43

C++中C風(fēng)格字符串

2010-03-16 17:14:19

Python字符串

2009-02-24 15:39:27

字符串比較函數(shù)函數(shù)

2021-10-14 15:34:48

C語(yǔ)言字符串函數(shù)

2011-07-15 11:07:41

C語(yǔ)言字符串函數(shù)

2011-07-15 12:41:53

C語(yǔ)言
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)