C回顾与C++概述

    xiaoxiao2021-03-25  104

    一、C回顾

    1. 变量

    局部变量:局部变量是在函数中定义的临时变量,作用域是从变量的定义处开始,到函数结尾。

    静态局部变量具有局部作用域,它只被初始化一次,自从第一次被初始化直到程序运行结束都一直存在,但静态局部变量只对定义自己的函数体可见。

     

    外部变量:外部变量是在函数外部定义的全局变量,作用域从变量的定义处开始,到本程序文件的结尾。

    有时需要在其他文件中使用extern来声明外部变量,以扩展外部变量的作用域。

    也可用static声明外部变量,使该变量不能被其他文件引用。

     

    2. 函数

    参数—传值调用

    即参数可以看作是便于初始化的局部变量。

    void swap(int a,int b)//传值

    {

        int temp;

        temp=a;

        a=b;

        b=temp;

    }

    在main函数中调用swap(a,b)不能真正改变main函数中a,b的值;

     

    一种方式是将a,b定义为全局变量,另一种方式是通过传递指针(指针即保存变量地址的变量)实现。

    void swap(int* a,int* b)//传指针

    {

        int temp;

        temp = *a;

        *a = *b;

        *b = temp;

    }

    在main函数中调用swap(&a,&b)传递变量a,b的指针。

     

    对于数组参数,f( int *a ) 等效于 f( int a[] ) ,而函数调用时,f( a ) 同样等效于f( &a[0] )

     

    其他,活用struct、enum、typedef、条件编译等。

     

     

    二、C++概述

    1、标准输出流cin与标准输出流cout

    2、结构、枚举名可以直接作为类型名,不必再前面冠以关键字

    3、const修饰符可以取代#define来定义常量(C语言中const定义了不可修改的变量)

    4、内联函数(inline),插入内联函数代码,用实参代替形参(用空间换时间)

    5、带有默认参数的函数,以及允许函数的重载

    6、运算符new、delete

    7、引用 int &j=i; 变量i和引用j占用内存的同一个地址

    引用作为函数参数:

    void swap(int &a,int &b)//引用

    {

        int temp;

        temp=a;

        a=b;

        b=temp;

    }

    在main函数中调用swap(a,b)即可,与传递指针效果类似,不过避免了复杂的指针操作。

     

    引用返回函数值:

    可以将函数放在赋值运算符左边。

    转载请注明原文地址: https://ju.6miu.com/read-22081.html

    最新回复(0)