main()
{
char c;
while((c=getchar())!=EOF)
{
if(c=='\t')
printf("\\t");
if(c=='\b')
printf("\\b");
if(c=='\')
printf("\\");
putchar(c);
}
}
10 个解决方案
#1
没看懂问题
#2
怎么了?
#3
#include <stdio.h>
int main()
{
char c = '\0';
while((c = getchar()) != EOF)
{
if(c == '\t') printf("\\t");
else if(c == '\b') printf("\\b");
else if(c == '\\') printf("\\\\");
else putchar(c);
}
return 0;
}
#4
不明白LZ的意思,是楼上那样吗?
#5
就是 制表符是如何替换成 \t 的
#6
就是用转义符\对字符t进行转义啊,转好了就成了制表符了。这样表达:'\t'
printf里为了把它打印出来,用两个\\表示需要打印一个'\'。因为如果只写一个\的话会被编译器解释为转义符。
printf里为了把它打印出来,用两个\\表示需要打印一个'\'。因为如果只写一个\的话会被编译器解释为转义符。
#7
那回退符为什么不能转换成\b呢?(我是在苹果的系统下)
#8
google 转义字符
#9
没用过苹果,不知道是怎么回事。
#10
有种解释是: 回退符在缓存中被删除了
所以 显示不了。
求高手帮忙啊
所以 显示不了。
求高手帮忙啊
#1
没看懂问题
#2
怎么了?
#3
#include <stdio.h>
int main()
{
char c = '\0';
while((c = getchar()) != EOF)
{
if(c == '\t') printf("\\t");
else if(c == '\b') printf("\\b");
else if(c == '\\') printf("\\\\");
else putchar(c);
}
return 0;
}
#4
不明白LZ的意思,是楼上那样吗?
#5
就是 制表符是如何替换成 \t 的
#6
就是用转义符\对字符t进行转义啊,转好了就成了制表符了。这样表达:'\t'
printf里为了把它打印出来,用两个\\表示需要打印一个'\'。因为如果只写一个\的话会被编译器解释为转义符。
printf里为了把它打印出来,用两个\\表示需要打印一个'\'。因为如果只写一个\的话会被编译器解释为转义符。
#7
那回退符为什么不能转换成\b呢?(我是在苹果的系统下)
#8
google 转义字符
#9
没用过苹果,不知道是怎么回事。
#10
有种解释是: 回退符在缓存中被删除了
所以 显示不了。
求高手帮忙啊
所以 显示不了。
求高手帮忙啊