这里第三行把void改成int为什么可以,有什么区别吗

来源:5-10 局部与全局

qq_杨正雄_mxzCEJ

2018-10-25 10:55

#include <stdio.h>

int x = 77;

void fn1()

{

    printf("fn1(): x=%d\n", x);       

}

int main()

{

    int x = 10;

    if(x>0)

    {

     int   x = 100;

        x /= 2;

        printf("if语句内, x=%d\n", x);       

    }

    printf("main方法内, x=%d\n", x);

    fn1();

    return 0;

}


写回答 关注

5回答

  • qq_慕斯622499
    2018-11-05 22:05:37

    void *可以指向任何类型的数据,void几乎只有注释和限制程序的作用,因为很少人会去定义一个void变量

  • 慕粉0247298809
    2018-11-02 17:15:49

    刚测试了一下,int函数如果不需要返回值,只是打印的话也是可以不加return; 

    如果int函数里有运算值要送出来,就要加return,不加的也可以跑,不过运算值不送回mian函数;

  • Ghost丶神话
    2018-10-31 21:29:30

    因为void表示返回到0了,这时void就执行完了,在这里就没有执行下去了,和int的区别是int表示定义函数,void表示返回函数

    慕粉0247...

    问的是把viod改成int , viod可以 , 为啥int也可以? int函数不是需要返回值的吗?

    2018-11-02 17:04:08

    共 1 条回复 >

  • 慕姐0891357
    2018-10-26 08:54:09

    没什么问题的,只不过加个return  0;就行了。

    TRAUSI 回复慕粉0247...

    在c11版本中,不加return 0的时候默认加上

    2019-02-16 15:01:13

    共 2 条回复 >

  • 三只狐狸
    2018-10-25 19:59:16

    可以的viod的默认返回值是0

    慕粉0247...

    问的是把viod改成int , viod可以 , 为啥int也可以? int函数不是需要返回值的吗?

    2018-11-02 17:03:58

    共 1 条回复 >

C语言入门

C语言入门视频教程,带你进入编程世界的必修课-C语言

926243 学习 · 20798 问题

查看课程

相似问题