【C/C++面试题精选(一)】|来源于各大IT公司

作者|Panda程序员
来源|机器学习与Python编程

一、C/C++基础知识

:本期我以一题一答案的形式来码,希望单独分开的话留言告知。
面试题1【考频:🌟🌟🌟】:C++中有哪几种基本数据类型?

答案:整数型、浮点型、void型

面试题2【考频:🌟🌟】:常量与变量有哪些区别?

答案
区别1:常量的值不可变;变量的值可改变
区别2:常量在定义时必须初始化;变量在定义时可以不初始化
区别3:常量不可以寻址,变量可以寻址。

面试题3【考频:🌟🌟🌟🌟】:自增自减的前操作与后操作的区别?

答案:前自增自减操作的优先级大于赋值运算符“=”,后自增自减操作优先级小于赋值运算符。

面试题4【考频:🌟🌟🌟🌟🌟】:变量有哪几种初始化方式?

答案
直接初始化: int a(100);
赋值初始化: int b = 200;

面试题5【考频:🌟🌟🌟🌟🌟】:什么是变量的声明和定义?

答案:声明的主要目的是表明变量的类型和名称;定义的主要目的是为变量分配存储空间

面试题6【考频:🌟🌟🌟🌟】:什么是引用?

答案:引用是对象的另一个名字,引用主要用作函数的形式参数使用。

面试题7【考频:🌟🌟】:C与C++有什么区别?

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

面试题8【考频:🌟🌟🌟🌟】:while循环与do-while循环有什么区别?

答案
区别:如果循环条件为false,while语句不会执行循环,而do-while保证循环体至少执行一次。

面试题9【考频:🌟🌟🌟🌟】:什么是递归?

答案:一个过程或函数直接或间接调用自身,这种过程或函数叫做递归。

面试题10【考频:🌟🌟🌟】:什么是标准输入/输出流?

答案
标准输入流:从标准输入设备(键盘)流向程序的数据。
标准输出流:流向标准输出设备(显示器)的数据。

面试题11【考频:🌟🌟🌟】:文件输入输出有哪几种方式?

答案:ifstream、ofstream、fstream

面试题12【考频:🌟🌟🌟🌟🌟】:什么是异常?

答案:程序运行时出现的不正常,它可能导致程序无法正常运行甚至停止运行,异常处理可以用来保证程序的稳定性。

面试题13【考频:🌟🌟🌟🌟】:如何抛出和捕捉异常?

答案:在C++中,系统通过try块和异常处理构成异常机制;通过catch语句来捕捉异常;通过throw语句可以抛出异常。

二、预处理以及内存管理

面试题14【考频:🌟🌟🌟】:如何分配和释放存储空间?

答案:在C++中,使用new和delete来分配和释放存储空间。

面试题15【考频:🌟🌟🌟】:虚函数与纯虚函数有什么区别?

答案:纯虚函数是虚函数的一个子集。

三、指针

面试题16【考频:🌟🌟🌟】:什么是指针?

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

面试题17【考频:🌟🌟🌟】:如何使用指针操作数组?
答案:在C/C++中,指针对与数组的操作是通过将数组的地址赋值给指针进行。指针可以操作一维和多维数组。
代码演示:

int a[] = {0,2,4,6,8};
int *ip1 = a;// 指针ip1指向数组第一个元素a[0]的地址
int *ip2 = &a[4];//指针ip2指向数组最后一个元素a[4]的地址

面试题18【考频:🌟🌟🌟🌟】:指针数组与数组指针的区别?

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

面试题19【考频:🌟🌟🌟】:什么是函数指针?如何使用函数指针?

答案:函数指针就是指向函数地址的指针。

//代码演示
main()
{
	int f();
	int i, a, b;
	int (*p)();//定义函数指针
	scanf(%d”, &a);
	p = f;//给函数指针p赋值,使它指向函数f
} 

面试题20【考频:🌟🌟🌟】:指针和引用有什么区别?

答案
1⃣️指针是一个实体,而引用仅仅是个别名;
2⃣️引用使用时无需解引用(*),指针需要解引用;
3⃣️引用只能在定义时被初始化一次,之后不可变;而指针可变;
4⃣️引用没有const,指针有const;
5⃣️引用不能为空,指针可以为空;
6⃣️在内存分配上,程序为指针变量分配内存区域,而引用不需要分配内存区域。

结语:未完待续,希望长得好看得您不吝点赞👍给我点动力继续写完。后面的内容码出来后会把地址贴进来,可以提前收藏一波儿。

四、面向对象编程

五、继承与函数

六、模板与STL

七、数据结构

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值