zoukankan      html  css  js  c++  java
  • C++笔记013:C++对C的扩展——C++中所有变量和函数都必须有类型

      


    原创笔记,转载请注明出处!

    点击【关注】,关注也是一种美德~ 


      

    C++中所有的变量和函数都必须有类型;

    C语言中的默认类型在C++中是不合法的!

     

    在C语言里面可以写一些很奇怪的函数!并且可以运行成功!

    f(i)函数的返回值是什么类型?参数又是什么类型?我们赋值10居然可以打印出来!

    g()函数可以接受多少个参数?我们没有参数,但是函数调用时我们可以加上参数,并且运行成功!

    f(i)

    {

        printf("i=%d ",i);

    }

    g()

    {

        return 5;

    }

     

    int main()

    {

        f(10);

        printf("g()=%d ",g(1,2,3,4,5));

     

        return 0;

    }

     

    运行结果:

    i = 10

    g() = 5

    Press any key to continu

     

     

     

     

    所以说这就是C语言不好的地方,这个不好的地方C++对其进行了摒弃!

     

    同样的代码我们放到C++中来看一下!

     

    #include<iostream>

    using namespace std;

     

    f(i)

    {

        printf("i=%d ",i);

    }

    g()

    {

        return 5;

    }

     

    int main()

    {

        f(10);

        printf("g()=%d ",g(1,2,3,4,5));

     

        system("pause");

        return 0;

    }

     

    发现编译报错。

     

     

     

     

    在C++中,不管是函数返回值类型还是变量类型,还是函数参数数量,我们都不能马虎,C++编译器都可以一一找出错误!下面的程序编译才可以通过!

     

    #include<iostream>

    using namespace std;

     

    int f(int i)

    {

        printf("i=%d ",i);

        return 0;

    }

    int g()

    {

        return 5;

    }

     

    int main()

    {

        f(10);

        printf("g()=%d ",g());

     

        system("pause");

        return 0;

    }

     

    因此C++对变量和函数的类型检查更加严格!

    小结:

    在C语言中

    int f() 表示返回值为int类型,接受任意参数的函数;

    int f(void) 表示返回值为int类型的无参函数。

    在C++

    int f()和int f(void)具有相同的意义,都表示返回值为int类型的无参函数。

    C++更加强调类型,任意的程序元素都必须指明类型。


    原创笔记,转载请注明出处!

    更多精彩请关注微信公众号:依法编程


     

  • 相关阅读:
    开发者使用JasperReport——通过数据源生成报表
    《编程导论(Java)》电子参考文献索引
    QT信号的自定义
    uCOS3空闲任务
    php函数nl2br的反函数br2nl
    PHPstorm相关设置以及快捷键
    phpstorm 左边的文件列表没用了 怎么弄出来
    nl2br()与nl2p()函数,php在字符串中的新行(\n)之前插入换行符
    DNS配置&HTTP 规格严格
    GC与幽灵引用 规格严格
  • 原文地址:https://www.cnblogs.com/tyyhmtyyhm/p/8973888.html
Copyright © 2011-2022 走看看