李杰伟 发表于 2019-3-7 15:06:10

就是一个编码问题

#include <stdio.h>

int main()
{
        printf("       \n\
                       @\n\
                      / \\\n\
                      * *\n\
                      * *\n\
                      * *\n\
                * * * * * * \n\
                * * * * * * * *\n\
             * * * * * * * * * * \n\
                     * *\n\
                     * *\n\
                  * * * *\n\
                 * * * * * * \n
");
        return 0;
}


求解为什么运行失败。

jackz007 发表于 2019-3-7 15:27:01

本帖最后由 jackz007 于 2019-3-7 15:31 编辑

    楼主,更正一下,不是运行失败,而是编译失败。
    问题出在 printf() 的倒数第2行,行尾缺少续行符
               * * * * * * \n
");
    这样才对
               * * * * * * \n\
");

李杰伟 发表于 2019-3-7 17:53:23

jackz007 发表于 2019-3-7 15:27
楼主,更正一下,不是运行失败,而是编译失败。
    问题出在 printf() 的倒数第2行,行尾缺少续行符
...

好像行了 但是我还想问一下 就是:\n\和\n有什么区别啊 我问了别人 他们用\n 也可以运行 怎么回事呢

jackz007 发表于 2019-3-7 18:12:12

本帖最后由 jackz007 于 2019-3-7 18:17 编辑

      在 C 语言中,当一条语句过长,用一行写不下或不方便时,可以续行,就是把这条长语句打断成若干个段落,用连续的若干行来表示,当然,每一行的末尾必须要加上续行符。字符 '\' 就是续行符(可以参考本例 printf 语句)。用续行符有个约定,续行符必须是所在行除回车符以外的最后一个字符,也就是说,在续行符的后面不允许出现任何字符特别是空格字符。

      有了这些概念,\n 和 \n\的区别就很显然了,\n 是错误的,因为缺少续行符。

李杰伟 发表于 2019-3-7 21:18:30

jackz007 发表于 2019-3-7 18:12
在 C 语言中,当一条语句过长,用一行写不下或不方便时,可以续行,就是把这条长语句打断成若干个段 ...

#include <stdio.h>

int main()
{
        printf("       \n                       @\n                      / \\\n                      * *\n                      * *\n                      * *\n                * * * * * * \n                * * * * * * * *\n\          * * * * * * * * * * \n                           * *\n\                           * *\n                               * * * *\n                           * * * * * * \n");
        return 0;
}



这个代码为什么能运行?

李杰伟 发表于 2019-3-7 21:57:56

jackz007 发表于 2019-3-7 18:12
在 C 语言中,当一条语句过长,用一行写不下或不方便时,可以续行,就是把这条长语句打断成若干个段 ...

#include <stdio.h>

int main()
{
        printf("       \n                       @\n                      / \\\n                      * *\n                      * *\n                      * *\n                * * * * * * \n                * * * * * * * *\n\          * * * * * * * * * * \n                           * *\n\                           * *\n                               * * * *\n                           * * * * * * \n");
        return 0;
}


这个为什么能运行啊

jackz007 发表于 2019-3-7 21:58:08

李杰伟 发表于 2019-3-7 21:18
#include

int main()


      运行没问题,但是,你这一行代码是不是必须得拉动窗口卷动棒才可以看完整,是不是会感到不方便?

李杰伟 发表于 2019-3-7 21:58:53

jackz007 发表于 2019-3-7 21:58
运行没问题,但是,你这一行代码是不是必须得拉动窗口卷动棒才可以看完整,是不是会感到不方便?

懂了谢谢
页: [1]
查看完整版本: 就是一个编码问题