我有一个程序,它接受一个字符串,用空格将其分开,然后分析字符串的每一部分。
遇到转义符,比如单引号:\',我想打印出它的十六进制形式:0x27。
我试图查找如何执行此操作,但没有找到任何有用的信息。有没有办法访问转义字符的十六进制代码,或者我是否必须在打印语句中手动打印出十六进制代码?
最佳答案
如果你的字符串部分是一个字符,如你所说,你可以像这样打印它:
char = '\'';
printf("caracter: %x", c);
一个字符就是一个1字节的int
。 printf() 中的说明符以某种格式输出该 int,例如基于 ASCII 的字符("%c"
) 或作为普通数字 ("%d"
) 或作为其值的十六进制表示 ("%x"
>).
关于c - 在C中获取十六进制形式的转义字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31115417/