換行字符回憶上次内容- 數制可以轉化
- bin(n)可以把數字轉化為 2進制
- hex(n)可以把數字轉化為 16進制
- int(n)可以把數字轉化為 10進制
- 編碼和解碼可以轉化
- ASCII 碼表範圍
- 0x41-0x5A 這個範圍是 大 寫字母
- 0x61-0x7A 這個範圍是 小 寫字母
- 0x30-0x39 這個範圍是 數字
- 0x20-0x7F之間有各種符号
- 0x00-0x1F之間的東西是什麼?
文件編碼- 編寫一個文件
- 寫下 abcd
- 用 :%!xxd
- :%!xxd -r 變回來


- 可以看到文件是用 2進制 方式存儲的
- 0x61 - a
- 0x62 - b
- 0x63 - c
- 0x64 - d
- 後面的那個 0a 是什麼
- 我們還得回到最初
回到最初- 我們回到開始的時候
- 前面介紹的 c 語言的第一個程序
- 注意到hello world後面的\n了麼?
- 注意到hello world後面的\n了麼?
- 特别注意斜杠的方向
- 這個方向\叫反斜杠
- 在回車上面
- 那\n到底是什麼??


輸出"\n"
#輸出\n
print("\n")
#直接print
print()
#查看序号
ord("\n")
#查看十六進制的序号
hex(ord("\n"))
- 我們直接把他輸出看看
- 好像換了 兩 行
- 如果沒\n的話,隻換 一 行
- \n整體作為一個字符的話


找到位置


- 10 就是十六進制的 0x0A
- 這個數值在 ascii 碼表中意思是 LF
- 啥意思?
搜索- 搜索\n得到的結果是這樣的
- 那我真的可以用這個\n換行嘛?


#輸出字符串中帶有\n
print("Hello\nWorld")


多來幾個
#輸出字符串中帶有\n
print("He\nllo\nWor\nld")
- 顯然這個 \n 就是一個換行
- 字符串裡面有個 \n 就意味着需要換 1 行
- 他的英文是 Line Feed
- 意思就是 新換1行
- 這個東西其實比 ascii 的曆史還要悠久
- 從打字機的時代就有了
- 最最開始的時候分段落都是靠輸出空格然後換行
- 自從有了這個
- 一個鍵就有了新的一行了
- 所以LineFeed 很提高效率


反向操作
#輸出ascii值為10的字符
chr(10)
#把這個字符放在print裡面輸出
print("hello" chr(10) "world")


追溯曆史- 最早c語言 中的 \n 來自于什麼呢?
- 來自于 B語言
- B語言 是裡奇和湯普遜最早開發 unix 的語言
- 他運行在bell實驗室 的 PDP-8 上
- 1969 年最初用的是 B語言
- 1971 年開始對于 B語言 進行改造
- 在新買的 PDP-11 上用 B 給 B 寫擴展,稱之為 NewB
- 1973 年基本主體完成,改名叫 c語言
- 他們用手頭的編譯器和語言給 PDP-11 重寫了一個 Unix Kernel
- 機器語言和彙編語言本來不具有移植性
- c語言 程序則可以使用在 任意架構 的處理器上
- 隻要那種架構的處理器具有對應的 c語言編譯器和庫
- 那就能實現跨平台編譯
- 也就是今天所說的交叉編譯
- 這就是 c語言 在當時能夠發展的原因


Basic Combined Programming Language(BCPL)- B語言源自BCPL(Basic Combined Programming Language)
- 1967 年由劍橋大學的 Matin Richards 制作
- 在同樣由劍橋大學開發的 CPL語言 上改進而來
- BCPL 最早被用做牛津大學的 OS6操作系統 上面的開發工具
- 後來通過美國貝爾實驗室的改進和推廣成為了 UNIX 上的常用開發語言
- 最早 BCPL 語言的樣子是這樣的
- 這是這套表示法 有史以來最早的記錄
- 這裡也有一個類似的、什麼 n 的東西
- 當時的換行符長什麼樣呢?
BCPL的換行符


總結- \n 就是換行
- 他對應着 ascii 字符的代碼是(10)10進制
- 他的英文是 LF,意思是Line Feed
- 這樣我就可以自由的控制哪裡換行了!

, 更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!