程序员面试笔试宝典——读书笔记1、程序设计基础知识

本文是程序员面试笔试宝典的读书笔记,主要涵盖了C/C++中的关键字static、const、volatile的用法,switch语句的case结构,以及枚举变量的值计算。还讨论了C++中的new/delete与malloc/free的区别,以及如何定义和使用引用作为函数返回值。同时,文章提及了exit()函数与main()返回值的关系,并探讨了C++中模板函数的外部调用和异常处理机制。
摘要由CSDN通过智能技术生成

一、C/C++ 关键字

1、 static (静态)变量有什么作用

在C语言中,关键字static 的意思是静态,它有三个明显的作用

a、在函数体内,静态变量具有”记忆功能“,即一个被声明为静态的变量在这一函数被调用的过程中其值维持不变。(也就是经过一次的初始化,之后其值就不会进行改变

b、在模块内(但在函数体外),它的作用范围是有限制的,即如果一个变量被声明为静态的,那么该变量可以被模块内所有函数访问,但不能被模块外的其他函数访问。它是一个本地全局变量。

c、在模块内,如果一个函数被声明为静态的,那么该函数与普通函数作用域不同,其作用域仅在本文件中,它只可被这一模块内的其他函数调用,不能被模块外的其他函数调用,也就是说这个函数被限制在声明它的模块的本地范围内使用。


具体而言:

static 全局变量和普通的全局变量区别在于static 全局变量只初始化一次,这样做的目的是为了防止在其他文件单元中被引用。

static 局部变量和普通局部变量的区别在于static 全局变量只初始化一次,下一次的运算依据是上一次计算的结果值。

static()函数与普通函数的区别在于作用域不一样,static()函数只在一个源文件中有效,不能被其他源文件使用。


在C++中,在类内数据成员的声明前加上关键字static,该数据成员就是类内的静态数据成员。静态数据成员有以下特点:

a、对于非静态数据成员,每个类对象都有自己的复制品。而静态数据成员被当作是类的成员只有一份复制品。

b、静态数据成员存储在全局数据区,在定义时要分配空间,故不能在类声明中定义。

c、静态数据成员和普通数据成员 一样遵循从public、protected、private 访问规则。

d、static 成员变量的初始化在类外,此时不能再带上static 关键字。


2、const 有哪些作用

常类型也成为 const 类型,是指使用类型修饰符const 说明的类型。

在C语言中,它主要用于定义变量为常类型以及修饰函数参数与返回值。

在C++中还可以修饰函数的定义,定义类的成员函数。常类型的变量或对象的值是不能被更新的。

作用:

a、定义const 常量,具有不可变性。

b、进行类型检查,使编译器对处理内容有更多的了解ÿ

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值