C回顾与C++概述

本文回顾了C语言中的变量作用域,特别是静态和外部变量,以及函数调用中的传值与传指针。同时介绍了C++的一些重要特性,如cin和cout流、const修饰符、内联函数、默认参数、引用以及运算符new和delete。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、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)即可,与传递指针效果类似,不过避免了复杂的指针操作。

 

引用返回函数值:

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值