首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

C 語言八進制轉義字符:'\101' 和 '\116' 為什麼輸出 "AN"

     編輯:程式設計綜合問答

代碼

char c4 = '\101', c5 = '\116';
printf("%c%c", c4, c5); // 輸出 AN

原理

C 語言中 \ddd 表示**三位八進制**轉義序列,ddd 為 0-7 的數字。

轉換過程

字面量八進制值十進制值ASCII 字符
\101101₈1×8² + 0×8¹ + 1×8⁰ = 65'A'
\116116₈1×8² + 1×8¹ + 6×8⁰ = 78'N'

補充:其他進制轉義

  • \xhh:兩位十六進制(如 \x41 = 'A')。
  • \uhhhh / \Uhhhhhhhh:Unicode 碼點(C11/C++11)。
  • 常用轉義:\n(10), \t(9), \r(13), \\, \", \'。

驗證代碼

#include <stdio.h>
int main() {
    printf("Octal \\101 = %d = '%c'\n", '\101', '\101');
    printf("Octal \\116 = %d = '%c'\n", '\116', '\116');
    printf("Hex \\x41 = %d = '%c'\n", '\x41', '\x41');
    return 0;
}
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved