关于 C 中的退格问题,C 输出退格

发布于 科技 2024-06-18
17个回答
  1. 匿名用户2024-01-29

    第一段以 4 个星号运行,光标位于第 4 个星号下方。

    这与第二段中按任意键(Enter除外)时相同。

  2. 匿名用户2024-01-28

    在楼上,缺少一个步骤,即使用退格键 b 将光标倒回一个方格,然后输出一个空格或您要输出的另一个字符以覆盖原始字符。

  3. 匿名用户2024-01-27

    这与 b 和 b 无关。

    相反,这是由于 printf("%d*",i);下面的 * 很好,如果有匹配的 i,则输出 *

    当最后一个符合条件的 i 是最后一个时,还有一个 *

    b 用更多*覆盖了那个。

    b 不包括在内。

    如果你把两者都去掉,你会发现*总会有更多。

  4. 匿名用户2024-01-26

    一个制表符等于 4 个空格,由于您之前添加了两个制表符,因此您的退格键实际上与制表符抵消了。

  5. 匿名用户2024-01-25

    因为一个 t 是 8 位,两个是 16 位。 此时,光标在第 17 位,输入一个 3 位的 1 位整数,光标应在第 21 位,数字在第 20 位。 有 6 位数字后退,光标在第 15 位,输入数字后数字在第 18 位,光标在第 13 位。

    以此类推,输出编号不会占据前一个输出编号的位置,因此该编号不会被删除。

    并且下面的退格字符没有预留空间,因此删除了该数字。

    退格键位于计算机键盘上"<-"箭头键不会删除任何内容,数字将被删除,因为输出取代了原始数字。 也就是说,如果旧数据被新数据覆盖。

  6. 匿名用户2024-01-24

    T是一个制表符,按键盘上的tab键就是这样,它是一个字符,但是当它显示时,它通常是8个字符宽,可以跳转到下一个制表符。

    b是退格键,按键盘上的退格键,它也是一个字符,但是在显示的时候,它会将光标返回到前面的字符,但它不会删除光标位置的字符,如果后面有新字符,它会覆盖返回的字符,这与文本编辑器中按退格键的效果不同。

  7. 匿名用户2024-01-23

    t 是转到下一个选项卡位置的选项卡,通常为六个字符宽。 但它是从行的开头计算出来的。

    但它也是一个字符,b是一个退格键,也就是说光标位置是它前面的一个字符,所以b可以消除在他前面输入的空格或t,如果t后面有空格,则消除空格,并且可以输出一个t,也就是六个字符的宽度。

    如果前面有空格,则消除 t 并仅输出一个空格、一个字符的宽度和 ......占用两个字符的空间,因此 B 能够消除其中的一半。

  8. 匿名用户2024-01-22

    c 语言中没有 %b 格式。

    C 在语言中有 b -- 转义字符。

    输出语句的格式为"\b"相当的退格键(退格键)。

    printf("abcd\b123");它相当于擦除 b 的前面 d 和输出 abc123

    printf("abc|\t|\t\b123");它相当于擦除 b 前面的 t(制表符),然后输出:abc| |123

    b'是一个字符常量,该值在十进制系统中等于 8

  9. 匿名用户2024-01-21

    %b 表示将光标向前(向左)移动一位。

    使用 %b 时请注意:

    1 %b 不会跨行移动,也就是说,如果它已经移动到最左边,它不会移动到上一行,并且 %b 此时不起作用。

    2 %b 仅移动光标,但不擦除已输出的数据。

    让我们举几个例子:

    1 printf("asd%bcc");

    输出 ASCC

    其中 d 的输出被 %b 反隔,然后被后续的 c 覆盖。

    2 printf("asd%basdf");

    输出 asdasdf

    这里 %b 没有效果,因为 d 在退格键后没有被覆盖。

    3 printf("aaa%basd");

    输出 aaaasd%b 无效,因为光标已移动到下一行的最左侧。

  10. 匿名用户2024-01-20

    t 是一个水平制表符。

    b 是退格键。 t 是 6 个空格的输出。

    b 是一个正方形的背面,那么结果应该是 ab c c 是中间的 4 个空格,如果改成。

    COUT “原来是 ABC

    再添加一个'\b'<<

    它将变为 AC,即退回到 B 位置,输出 C 将覆盖 B。

  11. 匿名用户2024-01-19

    我正在运行它没有问题

  12. 匿名用户2024-01-18

    没遇到你说的问题,楼上的答案就遇到了。

    lz 使用什么编译器。

  13. 匿名用户2024-01-17

    re'hi'you

    因为 b 是退格键,所以 a 被删除;

    输出单引号字符;

    输出反斜杠字符;

    n 换行符; 所以,它完成了。

  14. 匿名用户2024-01-16

    你的键盘坏了,换一下。

  15. 匿名用户2024-01-15

    这与 b 和 b 没有根本关系,而是由于 printf("%d*",i);下面的 * 很好,如果有匹配的 i,则输出 *

    当最后一个符合条件的 i 是最后一个时,还有一个 *

    B 用更多覆盖它,而 B 不覆盖它,你把两者都去掉,你会发现总会有更多。

  16. 匿名用户2024-01-14

    是从文件中删除字符吗?

    如文件的内容"hello world"成为"hell world"?

    如果没有此功能,只能重写文件(全部或部分)。

  17. 匿名用户2024-01-13

    您可以使用 lseek 查找该字符并将其替换为空格。

相关回答
12个回答2024-06-18

int q2, *q1;回顾过去,Q2 是 int,Q1 是 int*。

10个回答2024-06-18

int i=0;

char s1[10]="abc",s2[10]="efg"; >>>More

4个回答2024-06-18

a、变量 i 在 main 函数的堆栈上。

b,变量 i 位于数据段上。 >>>More

6个回答2024-06-18

arr[i]=i;通过for循环将arr的值从0赋值到9,然后arr[i]的值不变,执行下一个for循环,k的值仍为0 ha,不变。 >>>More

8个回答2024-06-18

因为你把 char a='a',b='b';写在外面,这样,这两个变量的范围也更大。 >>>More