制表符-\t回退符-\b反斜杠-\\(求有关替换的的解答啊)

时间:2021-07-30 08:57:41
include <stdio.h>
main()
{
        char c;
        while((c=getchar())!=EOF)
        {
            if(c=='\t')
                printf("\\t");
            if(c=='\b')
                printf("\\b");
            if(c=='\')
                printf("\\");
            putchar(c);
        }
}

10 个解决方案

#1


没看懂问题 制表符-\t回退符-\b反斜杠-\\(求有关替换的的解答啊)

#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里为了把它打印出来,用两个\\表示需要打印一个'\'。因为如果只写一个\的话会被编译器解释为转义符。

#7


那回退符为什么不能转换成\b呢?(我是在苹果的系统下)

#8


google 转义字符

#9


没用过苹果,不知道是怎么回事。

#10


有种解释是: 回退符在缓存中被删除了
所以 显示不了。
求高手帮忙啊

#1


没看懂问题 制表符-\t回退符-\b反斜杠-\\(求有关替换的的解答啊)

#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里为了把它打印出来,用两个\\表示需要打印一个'\'。因为如果只写一个\的话会被编译器解释为转义符。

#7


那回退符为什么不能转换成\b呢?(我是在苹果的系统下)

#8


google 转义字符

#9


没用过苹果,不知道是怎么回事。

#10


有种解释是: 回退符在缓存中被删除了
所以 显示不了。
求高手帮忙啊