找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4642|回復: 15
收起左側

C語言c=b-' ';是什么意思

  [復制鏈接]
ID:974277 發(fā)表于 2021-11-22 09:08 來自手機 | 顯示全部樓層 |閱讀模式
有大佬懂這個語句是什么意思的嗎 c=b-' ';
那兩個單引號‘’是干嘛的,跪求解析(í _ ì)
回復

使用道具 舉報

ID:277550 發(fā)表于 2021-11-22 11:37 | 顯示全部樓層
' '之內的字符,單個字符,即char類型。 ' ' 的ascii 是0x20,相當c=b-0x20;
回復

使用道具 舉報

ID:974277 發(fā)表于 2021-11-22 11:50 來自手機 | 顯示全部樓層
單引號中間還有一個空格
回復

使用道具 舉報

ID:981582 發(fā)表于 2021-11-22 14:23 | 顯示全部樓層
什么意思?這個
回復

使用道具 舉報

ID:624769 發(fā)表于 2021-11-22 18:21 | 顯示全部樓層
15903835881 發(fā)表于 2021-11-22 11:50
單引號中間還有一個空格

就是這個空格,代表著  0x20,建議不要研究有這條語句的整體代碼,寫這條語句的就是為了顯擺自己能背得出幾個ASCII碼。往往有這種心態(tài)的,代碼都寫的不怎么樣,不值得學。
回復

使用道具 舉報

ID:983540 發(fā)表于 2021-11-22 19:01 | 顯示全部樓層
char類型的單字符,代表一個空格字符
回復

使用道具 舉報

ID:517951 發(fā)表于 2021-11-23 09:26 | 顯示全部樓層
字符abcd的順序是1234, c=b+1+‘ ’; c=b-‘ ’是什么意思就不難理解了。
回復

使用道具 舉報

ID:714253 發(fā)表于 2021-11-23 09:49 | 顯示全部樓層
兩個單引號代表空格,空格的十進制碼是32,16進制就是0x20
回復

使用道具 舉報

ID:70035 發(fā)表于 2021-11-23 12:14 | 顯示全部樓層
一空格ASCII
回復

使用道具 舉報

ID:983500 發(fā)表于 2021-11-23 13:21 | 顯示全部樓層
把b-附于c
回復

使用道具 舉報

ID:883242 發(fā)表于 2021-11-23 15:54 | 顯示全部樓層
188610329 發(fā)表于 2021-11-22 18:21
就是這個空格,代表著  0x20,建議不要研究有這條語句的整體代碼,寫這條語句的就是為了顯擺自己能背得出 ...

這種寫法也有好的意義,比如ascii轉值,-'0'就會讓代碼清晰明確,但是我也弄不清-' '是什么意義。
回復

使用道具 舉報

ID:624769 發(fā)表于 2021-11-23 16:26 | 顯示全部樓層
Hephaestus 發(fā)表于 2021-11-23 15:54
這種寫法也有好的意義,比如ascii轉值,-'0'就會讓代碼清晰明確,但是我也弄不清-' '是什么意義。

-‘0’是為了把字符數字轉為數字,相比-0x30更直觀, -0x20  是用于把小寫字母轉大寫字母, 不過一般都寫 - 0x20 而不會寫 - ‘ ’ 因為 不顯示的符號不僅僅是只有,0x20,0x00~0x20都是不顯示字符,寫‘ ’ 容易產生分歧。
回復

使用道具 舉報

ID:624769 發(fā)表于 2021-11-23 16:37 | 顯示全部樓層
Hephaestus 發(fā)表于 2021-11-23 15:54
這種寫法也有好的意義,比如ascii轉值,-'0'就會讓代碼清晰明確,但是我也弄不清-' '是什么意義。

再補充一下,就算為了直觀, 一般的寫法也是:  - ‘a'+'A'   為了寫的不那么復雜,會直接 - 0x20  除了顯示自己能被得出幾個ASCII碼,真不會有人去寫: - ‘ ’  這種。
而且轉大小寫很少用+ - 來轉換,因為轉大小寫通常為了字符統(tǒng)一,所以, 一般都是  |0x20  無論大小寫都轉小寫, 要么 &0xDF; 無論大小寫都轉大寫, 要么,^0x20  大寫變小寫,小寫變大寫的大小寫互轉。
回復

使用道具 舉報

ID:139866 發(fā)表于 2021-11-23 17:28 | 顯示全部樓層
單引號就代表ascii字符形式,實際上就是一個數,c = b - 32,或者c = b - 0x20
51hei拼音截圖20211123172409.png
回復

使用道具 舉報

ID:976040 發(fā)表于 2021-11-23 18:57 | 顯示全部樓層
單引號表示字符型的數據,這里單引號里面是空格,表示變量c=變量b減去空格的ASCII碼值,空格的ASCII碼值可以查表得到是32,也可以通過寫程序,打印出空格的值(printf("%d",' ');)
回復

使用道具 舉報

ID:983972 發(fā)表于 2021-11-23 19:50 | 顯示全部樓層
定義單個字符,char類型
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表