3120586067 发表于 2020-10-9 22:25:00

关于\n\的发问

\n表示换行,\表示上下两行是连在一起的,但\n\就有点糊涂了,想不通,在下列程序中,为什么要在\n后面加个\
#include<stdio.h>
int main()
{
    printf("         @\n\
      / \\\n\
      * *\n\
      * *\n\
      * *\n\
    * * * * * *\n\
* * * * * * * *\n\
* * * * * * * * * *\n\
      * *\n\
      * *\n\
      * * * *\n\
    * * * * * *\n");
    return 0;
}

昨非 发表于 2020-10-9 22:26:37

为了续上上一行,当一个字符串跨多行时,需要在行尾加上\

召唤风云 发表于 2020-10-9 22:27:51

字符串不能分行写,否则会报错

3120586067 发表于 2020-10-9 22:42:00

昨非 发表于 2020-10-9 22:26
为了续上上一行,当一个字符串跨多行时,需要在行尾加上\

它分行了,为撒又续上上一行

昨非 发表于 2020-10-9 22:45:26

3120586067 发表于 2020-10-9 22:42
它分行了,为撒又续上上一行

因为语法规定,一个字符串跨行会报错,必须用\续上,你可以大胆去掉\试试,看编译器答不答应

四仰化三铁 发表于 2020-10-9 23:48:06

请问那其中的\\n\又是什么意思,萌新发问

昨非 发表于 2020-10-10 10:00:04

四仰化三铁 发表于 2020-10-9 23:48
请问那其中的\\n\又是什么意思,萌新发问

双斜杠,转义输出反斜杠,是图形的一部分,后面的反斜杠n,是换行,最后的反斜杠,续行

四仰化三铁 发表于 2020-10-10 10:22:52

昨非 发表于 2020-10-10 10:00
双斜杠,转义输出反斜杠,是图形的一部分,后面的反斜杠n,是换行,最后的反斜杠,续行

您好,我还是有点不理解
如果两个反斜杠输出一个反斜杠,那为什么当我只用一个反斜杠时输出的图形会不一样
还有不太懂换行和续行的区别{:10_277:}

昨非 发表于 2020-10-10 10:25:31

四仰化三铁 发表于 2020-10-10 10:22
您好,我还是有点不理解
如果两个反斜杠输出一个反斜杠,那为什么当我只用一个反斜杠时输出的图形会不一 ...

建议百度c需要转义字符含义,这个我一两句解释不清的

四仰化三铁 发表于 2020-10-10 10:27:11

昨非 发表于 2020-10-10 10:25
建议百度c需要转义字符含义,这个我一两句解释不清的

好的好的,感谢

昨非 发表于 2020-10-10 12:47:24

楼主人呢?

风过无痕1989 发表于 2020-10-10 13:35:14

昨非 发表于 2020-10-10 12:47
楼主人呢?

杨白劳

{:5_109:}{:5_109:}{:5_109:}

葛明佳 发表于 2020-10-10 18:27:22

为了表示这个跟上一行是同一个printf里面的,不然你需要在每一行都写printf(“ “),一个字符串不能换行的。

405794672 发表于 2020-10-12 20:56:16

\n是让打印程序打印的时候换行。最后的\是说本君换行了,你要当作没有换行。于是编译器就合成一起了
编译器是按行编译,如果你一行没打完,它就懵逼了。所以要给个\让它继续读下去
这个\与\n没有任何关系。就算后面不是\n,它也会出现。
也就是说\n与\是两个命令,你得分开看

3120586067 发表于 2020-10-12 22:28:57

谢谢各位了,已了解
页: [1]
查看完整版本: 关于\n\的发问