腾展科技 - C++实习 - 一面 面经

1. 自我介绍

(开放性问题,候选人应包含教育背景、技术栈、项目经验,控制在2分钟以内)

2. Linux系统的目录结构是怎样的?常用目录分别存放什么内容?

参考答案:Linux采用树形目录结构,根目录为/,常见目录含义:

  • /bin:存放基本命令,如ls、cp、mv等
  • /etc:存放系统配置文件
  • /home:普通用户的主目录
  • /var:存放日志、缓存等动态数据
  • /tmp:临时文件,重启后清空
  • /usr:用户程序和库文件
  • /dev:设备文件,如磁盘、终端
  • /proc:虚拟文件系统,反映系统运行状态
  • /root:root用户的主目录
  • 与Windows区别:Linux一切皆文件,没有盘符概念,路径用/分隔,Windows用\分隔

3. 版本控制系统的作用是什么?Git和SVN有什么区别?

参考答案:版本控制系统用于管理代码变更历史,支持多人协作开发:

  • 核心作用:记录每次代码修改、支持回退到历史版本、多人并行开发不冲突、追踪谁在什么时候改了什么
  • Git是分布式版本控制:每个开发者本地都有完整的仓库,可以离线提交,速度快
  • SVN是集中式版本控制:只有一个中央服务器,必须联网才能提交,服务器宕机则无法工作
  • Git优势:分支创建和合并成本极低、离线工作、速度快、社区生态好
  • 常用平台:GitHub(全球最大代码托管平台)、Gitee(国内)、GitLab(企业自建)

4. 如何使用Git从远程仓库获取代码?克隆和拉取有什么区别?

参考答案:获取远程代码有两种场景:

  • git clone:第一次获取项目,将远程仓库完整复制到本地,包含所有历史记录和分支 使用方式:git clone 仓库地址,会在当前目录创建同名文件夹支持HTTPS和SSH两种协议
  • git pull:已有本地仓库,获取远程最新更新并合并到当前分支 本质是git fetch + git merge的组合使用前需要先clone过仓库
  • 从GitHub下载代码还可以直接点击Download ZIP,但这种方式不包含Git历史记录,无法进行版本管理
  • SSH方式需要提前配置公钥到GitHub账户,HTTPS方式需要输入账号密码或Token

5. Linux和Windows在使用场景上有什么本质区别?

参考答案:两者定位和设计理念不同:

  • 开源与闭源:Linux开源免费,任何人可以查看修改源码;Windows是商业软件,需要付费授权
  • 稳定性:Linux服务器可以运行数年不重启,Windows需要定期更新重启
  • 使用场景:Linux主要用于服务器、嵌入式设备、开发环境;Windows主要用于桌面办公和游戏
  • 命令行:Linux以命令行为核心,操作高效;Windows以图形界面为主
  • 权限管理:Linux权限体系更严格,普通用户权限受限;Windows权限管理相对宽松
  • 文件系统:Linux常用ext4,Windows常用NTFS;Linux文件名大小写敏感,Windows不敏感
  • 软件生态:Windows软件生态更丰富,Linux开发工具链更完善
  • C++开发:Linux下GCC工具链更成熟,服务器端C++开发基本都在Linux环境

6. Linux下有哪些常用的文件操作命令?

参考答案:Linux文件操作命令是开发必备:

  • 查看文件:ls(列出目录)、ls -la(详细信息含隐藏文件)、cat(查看文件内容)、less/more(分页查看)
  • 目录操作:cd(切换目录)、pwd(显示当前路径)、mkdir(创建目录)、rmdir(删除空目录)
  • 文件操作:cp(复制)、mv(移动/重命名)、rm(删除)、rm -rf(强制递归删除)、touch(创建空文件)
  • 查找搜索:find(按条件查找文件)、grep(在文件中搜索内容)、which(查找命令位置)
  • 权限管理:chmod(修改权限)、chown(修改所有者)
  • 进程管理:ps aux(查看进程)、kill(终止进程)、top(实时监控)
  • 网络相关:ping(测试连通性)、netstat(查看网络连接)、curl(

剩余60%内容,订阅专栏后可继续查看/也可单篇购买

C++八股文全集 文章被收录于专栏

本专栏系统梳理C++技术面试核心考点,涵盖语言基础、面向对象、内存管理、STL容器、模板编程及经典算法。从引用指针、虚函数表、智能指针等底层原理,到继承多态、运算符重载等OOP特性从const、static、inline等关键字辨析,到动态规划、KMP算法、并查集等手写实现。每个知识点以面试答题形式呈现,注重原理阐述而非冗长代码,帮助你快速构建完整知识体系,从容应对面试官提问,顺利拿下offer。

全部评论

相关推荐

压力很大,面试官全程高压,问的问题不难,但是没有任何反馈,很慌张,也无算法。实习问了20分钟,一直问我你们做的有什么用,总时长一小时1.学校都有什么课程2.spring的ioc原理以及优点3.除了解耦还知道什么?4.springboot与spring区别,二者的源码看过没?Tomcat了解嘛?有没有具体看过5.spring的bean,面试官一直在重复一个思想问我懂不懂,完全没听过6.mybatis是干什么的?ibatis用过没?平常怎么写SQL?完全不写嘛?7.设计一个分布式双十一秒杀系统(前端,网关,缓存,数据库防超卖全设计)8.怎么做限流9.缓存与数据库一致性,你做异步要用户等你嘛?10.负载均衡怎么做11.多数据中心还是单数据中心,如果出现没卖完怎么做(到这完全不会了,面试官直接说换个话题吧)12.平常读书吗?13.上过哲学课嘛?14.兴趣爱好有没有15.对ai的看法16.来深圳有问题嘛?17.为什么不考研18.上大学带给了你什么?你提升在哪里,有没有具体的例子?反问:1.现在手机都有应用市场,应用宝怎么盈利?除了手机应用市场还是有人用,现在在做跨端,微软都有合作,之后会进军mac,主要做游戏,腾讯本身就是游戏大户。2.面试表现?整体评价一下会给到反馈。面完直接变HR面,今天HR面后,已经转为录用评估了,来牛客许个愿,暑期现在还没什么面试,希望能拿个offer之后再考虑要不要留在手子吧。
nunuking:三面压力这么大吗,面试的会议约了多长时间呀
面试问题记录
点赞 评论 收藏
分享
评论
点赞
3
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务