c++基础知识有哪些

这篇文章主要介绍了c++基础知识有哪些,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。

c++基础知识

C++ 是一种中级语言,它是由 Bjarne Stroustrup 于 1979 年在贝尔实验室开始设计开发的。C++ 进一步扩充和完善了 C 语言,是一种面向对象的程序设计语言。C++ 可运行于多种平台上,如 Windows、MAC 操作系统以及 UNIX 的各种版本。C语言是面向过程的语言,C++ 在此基础上增加了面向对象以及泛型编程机制,因此 C++ 更适合大中型程序的开发。然而,C++ 并没有牺牲效率,如果不使用高级特性,它的效率和C语言几乎没有差异。

1、C++中的基本数据类型有哪些?

答:3种类型:整数型、浮点型、void型。

2、整型有几种形式,各种形式有什么区别?

答:整型包括整数,字符和布尔值的算术类型,根据修饰符细分为13种形式,其主要区别体现在类型名、长度、表示范围几个方面。

3、C++中有哪些常量?

答:6种常量:整型常量、浮点型常量、字符型常量、字符串常量、转义字符常量、地址常量。

4、常量与变量有哪些区别?

答:(1)常量的值不可改变,变量的值可以改变;(2)常量在定义时必须初始化,变量在定义可以不初始化;(3)常量不可以寻址,其地址只可赋予常量指针,变量可以寻址;(4)常量有较高的编译执行效率;

5、操作符有哪些分类?

答:(1)按照操作数区分:一元操作符、二元操作符、三元操作符;(2)按照功能区分:算术操作符、关系操作符、逻辑操作符、位操作符、赋值操作符、自增自减操作符、箭头操作符、条件操作符、sizeof操作符、逗号操作符。

6、自增自减前操作与后操作的区别?

答:前自增自减操作的优先级大于赋值运算符(=),后自增自减操作的优先级小于赋值运算符,后自增自减操作后表达式的值不会发生改变。

7、指针和变量的自增自减有什么不同?

答:变量的自增自减是改变变量的值,指针的自增自减是改变指针的指向地址。

8、什么是左值和右值?

答:变量是左值,可以在赋值语句的左边;数字字面值是右值,不能被赋值。

9、变量有哪几种初始化方式?

答:2种:直接初始化;复制初始化。直接初始化更加灵活而且执行效率更高。

10、变量的声明和定义是什么?

答:变量声明的主要目的是表明变量的类型和名称;变量定义的主要目的是分配存储空间,它们有相同的时候。

11、C++中有哪几种作用域?

答:3种:全局作用域、局部作用域、语句作用域。

12、变量有哪几种存储类型?

答:4种:自动类型、静态类型、寄存器类型、外部类型。

13、C与C++有什么区别?

答:C语言是结构化的编程语言,它是面向过程的,考虑的是实现过程;C++是面向对象的,考虑的是整个程序模型。

14、宏定义与操作符的区别?

答:宏定义是C++的预处理命令之一,它是一个替换操作,不做计算和表达式求解,不占内存和编译时间。

15、虚函数与纯虚函数的特点?

答:虚函数必须是基类的非静态成员函数,其访问权限可以是protected或public;纯虚函数是虚函数的一个子集,含有纯虚函数的类就是抽象类,它不能生成对象。

16、如何使用纯虚函数?

答:纯虚函数用来定义没有意义的实现,用于抽象类中需要交给派生类具体实现的方法。

17、什么是指针?

答:指针是用来存储内存地址的变量,它指向单个对象的地址,除了void指针类型外,指针的数据类型与所指向地址的变量的数据类型需要保持一致。

18、const对象的指针和const指针的区别?

答:const指针本身的值不可改变,但可以使用该指针修改它所指对象的值;const变量的指针不可以修改所指向的const变量的值,但指针本身可以被重新赋值。

19、数组指针与指针数组的区别?

答:数组指针是一个指针变量,它指向一个数组;指针数组是一个只包含指针元素的数组,它的元素可以指向相同类型的不同对象。

c++基础知识有哪些