我正在尝试基本的c程序并编写了这样的程序,
#include <stdio.h>
int main()
{
printf("hello 0x0a");//0x0a is hex value for \n
return 0;
}
打印“hello 0x0a”。
有没有办法在printf中将转义序列作为十进制或十六进制值?
答案 0 :(得分:3)
有一种方法 - 但是这实际上并不是printf的功能,而是语言的一部分。
C字符串文字可以包含escape sequences,它将由编译器评估(而不是在运行时由printf评估)。
以十六进制编写的换行符的正确转义序列为\x0a
(或\x0A
由您自行决定):
printf("hello \x0a");
答案 1 :(得分:1)
是的,使用ASCII中的数值 0x0a 打印换行符。
#include <stdio.h>
int main()
{
printf("Hello,%cworld!", 0x0a);
}
退格键值 0x08 ,水平标签 0x09 。参考链接here。