踏雪失踪 发表于 2018-3-17 09:01:17

找不出来哪里不对 大神帮忙看看

一下这段代码我看了5遍,就是找不出来哪里不对    大神帮忙看看,找出哪里不对的同时帮我讲解一下最好    谢谢   


#include <stdio.h>

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

风过无痕丶 发表于 2018-3-17 09:21:54

你这哪里学的路子啊…这么野,没有 void main()
没有返回值你还要return 0;

踏雪失踪 发表于 2018-3-17 09:27:12

风过无痕丶 发表于 2018-3-17 09:21
你这哪里学的路子啊…这么野,没有 void main()
没有返回值你还要return 0;

那返回值那应该怎么改

风过无痕丶 发表于 2018-3-17 09:37:46

踏雪失踪 发表于 2018-3-17 09:27
那返回值那应该怎么改

我强烈建议你,规范一下书写~

#include <stdio.h>

//void main()不要再这样写了。这样写在C标准是不被承认的
int main(void)
// int 表示这个函数的返回值为整型   main为主函数~系统调用
// (void) 这个叫做参数列表。 此处的void表示这个函数没有参数!
{
        printf(" \n\
      **             *\n\
      *******         **\n\
    ************   ***\n\
***************** ****\n\
****** @ ***************\n\
***************** ****\n\
    ************   ***\n\
      *******         **\n\
      **             *\n\ ");

                return 0;
// 这里的 return 0 表示这个函数正常执行~ 正常返回~ 没有出现问题~
// 你可以暂时这里理解~
}

风过无痕丶 发表于 2018-3-17 09:46:03

{:10_245:}你都义正言辞的告诉了main函数 “你不准有返回值~不准有~”但是在main函数的结尾的地方 你要return 0;   编译器就摸不到头脑了。 “不是你让我不准有返回值吗,现在又返回一个0干什么了。 人类真是善变啊~ 算了不想了 先给他报个错再说吧~”

踏雪失踪 发表于 2018-3-17 10:01:33

风过无痕丶 发表于 2018-3-17 09:46
你都义正言辞的告诉了main函数 “你不准有返回值~不准有~”但是在main函数的结尾的地方 你要re ...

我知道我错在哪了,是引号后边没加空格

风过无痕丶 发表于 2018-3-17 10:11:17

踏雪失踪 发表于 2018-3-17 10:01
我知道我错在哪了,是引号后边没加空格

。。。。。无解无解看来我说的不够清晰。
#include <stdio.h>

int main(void){
       
        printf(" \n\
      **             *\n\
      *******         **\n\
    ************   ***\n\
***************** ****\n\
****** @ ***************\n\
***************** ****\n\
    ************   ***\n\
      *******         **\n\
      **             *\n");


        getchar(); // 忽略这一条 我用的VS 用来等待的~
                return 0;

}

我这不要空格也可以执行~
问题是什么! 你的函数是void 类型!那他就不能有返回值,不能! 你可以不写 return 0; 这条语句~或者说,你不能写这条语句!函数的返回值为void 表示没有返回值,或者说没有赋予这个函数返回一个值的功能!但是前面说了,建议你规范代码写int main(void)

踏雪失踪 发表于 2018-3-17 10:26:55

风过无痕丶 发表于 2018-3-17 10:11
。。。。。无解无解看来我说的不够清晰。




原来是这样啊

风过无痕丶 发表于 2018-3-17 10:31:03

踏雪失踪 发表于 2018-3-17 10:26
原来是这样啊

{:10_312:} 看你在做printf的打印练习,好像跟你说有关于函数的概念,早了一点。不好意思,可能把你讲晕了。但是你要明白~ 问题确实不是出在那个空格的位置~
页: [1]
查看完整版本: 找不出来哪里不对 大神帮忙看看