為什麼 C 程式中的字元 0 是 48 而不是 0?

發布 科技 2024-04-28
4個回答
  1. 匿名使用者2024-01-28

    當然也不等於0,landlord字元0的ascii值是48,可以去ascii表,可以看到結果!

    你學會了之後就知道了,這很簡單!

    請注意,這取決於您在定義變數時如何定義變數,如果您定義 int a; a=0,匯出時用什麼格式,如果是%d,那麼輸出0; 如果輸出 %c,則輸出為 48。

  2. 匿名使用者2024-01-27

    0'它表示字元“0”的 ASCII 程式碼,而不是數值。

  3. 匿名使用者2024-01-26

    字元 0 的 ASCII 程式碼值為 48

    至於為什麼,你去問創始人。

  4. 匿名使用者2024-01-25

    我認為可以......喜歡這個首先,在 ASCII 程式碼的範圍內,首先澄清兩個定義。

    字元:用單引號引起來。

    括號,例如'a'、'z'、'0'、'g' 等。

    編碼:這是字元在 ASCII 表中的位置,例如,這是乙個數字'a'位置是0x41,這也用於計算。

    所以,現在來回答你的問題:

    0,就是這個數字。

    0',這是字元,編碼是0x30

    因此,在字元變數的情況下:

    0-‘0’=0xd0,0-0=0,‘0’-‘0’=0

    0 可以是字元、形狀或長整數。 0 的值。

    不清楚你的意思,假設你用 C 語言宣告它。

    intk=123;編譯器。

    轉換為計算機**時,必須將其值 123 或 0x7b 分配給變數 k(通常是記憶體中的單位)(請注意,記憶體中沒有十進位項)。 如果你使用 scanf 函式給 k 賦值 567,你實際上是在鍵盤上輸入字元 '5'、'6' 和 '7',但程慶賢會為你轉換,並通過 ** 執行 k=( 和你看不到的中間變數'5'-0x30)*100+('6'-0x30)*10+('7'-0x30),以便變數儲存數字 567 而不是三個雀字元的字串。

    567”。 此轉換過程由編譯器自己的程式完成,因此即使您輸入浮點數,也不必擔心它。

    這很容易處理 - 如果您自己編寫轉換過程,則很容易出錯!

    3 已經。用C語言工作時,你不必擔心鍵盤上的數字是什麼樣的,但是在編譯時要小心,轉換過程必須寫好。

    由於字元的原因,將字元“0”、“9”轉換為數字 0 9 很容易'0'~'9'碼是0x30 0x39,只要清高四位數,就可以哥山了。

相關回答
9個回答2024-04-28

當單引號用作字元時,必須用'否則,編譯器會將其視為函式引用,而不是字元。 示例如下: >>>More

11個回答2024-04-28

說白了,每次呼叫c的值就是最後一次呼叫c的值,<> >>>More

19個回答2024-04-28

原理:只是執行一些所謂的“無意義指令”,比如縮放或執行乙個int自加法,簡單來說,就像高中數學中的“乘法原理”一樣,很容易快速增加上面提到的“無意義指令”的數量。 >>>More

9個回答2024-04-28

當然是程式檔案。

它是乙個單一的鉛彈簧庇護所。 >>>More

18個回答2024-04-28

char *a 是指向 char 型別的指標變數的宣告;

此時,a 未初始化,也不指向任何資料; >>>More