程序内存分布,全局变量、静态变量的存储位置

static修饰符作用

static全局变量跟普通全局变量区别,存储方式有何区别c++设计一个单例模式,多线程环境下如何设计?用线程锁是否会影响性能?有其他方案吗介绍下c++ socket 模型, 建立tcp连接的步骤。多线程同步方式有哪些进程、线程的区别进程间有哪些通信方式,各自优点是什么。

拷贝构造函数参数为何必须为引用

笔试题量很大,可惜很多没记住。大概讲下有印象的考点:

数据库方面考了很多,有很多我都没听过。

inner join,outer join,索引

软件工程知识也不少,还有敏捷开发

32位机上编译的 sizeof(char*),64位机子上输出什么?这题我觉得Linux上运行不了,win可以,但是我没有32位机子,没法测试,有人知道吗?

异或运算

短小常用函数在c里用什么代替,c++里用什么代替

char* const p和char const * p的区别

这题说一个我的记忆方法:把*视为point to,然后从后往前读,比如

char const * p就是p piont to a const char

char* const p就是p is const which point to a char

const char* p就是p point to a char which is const

所以char const * p和const char* p的意义是一样的,p指向的内存不可变,char* const p的意义是p本身的值不可变。

构造函数内调用另一个构造函数

class A {int m_age;string m_name;
public:A(const int& age){A(age, "");}A(const int& age, const string& name) : m_name(name), m_age(age){}
};

在java等平台支持语言中这种写法比较常见,但在c++中语法是没问题,但是结果肯定不是你想要的。

A(const int& age){A(age, "");
}

在 A(const int& age)内调用A(age, ""),在栈上构造了另一个匿名A对象,然后函数返回,匿名对象被销毁,然而当前对象成员却没有被初始化,成员值随机。如果非要这样写来达到重用代码,可以这样写

A(const int& age) {new (this)A(age, "");
}

c11及以上支持在初始化列表中调用另一个构造函数,不能写在函数体内。如

class A {int m_age;string m_name;
public:A(const int& age) : A(age, "") {}A(const int& age, const string& name) : m_name(name), m_age(age){}
};

需要注意的是,被调用的构造函数必须完整初始化所有成员。所以A(const int& age) 可以调用A(const int& age, const string& name),而反过来不行。

编程题:

1. 实现单项链表反转,只允许遍历一次。

2. 两个字符串,实现判断其中一个是不是另一个的子串,区分大小写,同时还要写test case

3. 传入6个字节长度的旧密码、新密码、再次输入的新密码三个字符串指针,然后判断是否符合以下规则:

新密码不能跟旧密码相同,两次输入的新密码要相同,密码为6位长度的数字的字符,新密码不能是123456或654321这样的有序数字或是666666这样的同一个数字。

关键是这题代码只能在for循环里里填

int changePasswdIsOk(char* Old, char* New, char* New2) {if (Old == NULL || New == NULL || New2 == NULL)return 0;for (int i = 0; i < 6; i++) {}}

本来看到这种题,一般会在循环外定义标志位用来保存上一次的状态,然后与下次循环判断结果相与,但是这题要求只能在循环内写代码,当时是有一点点思路的,就是在循环内创建静态标志位,但是想着想着最后还是要在循环外判断最终结果才能返回最终结果,时间又紧,下场面试的人已经在催了,就放弃了。回到家中还是没啥思路,想百度也不知道搜什么关键词,后来又想了想,写出来了:

bool changePasswdIsOk(const char Old[], const char New[], const char New2[]) {if (Old == NULL || New == NULL || New2 == NULL)return false;for (int i = 0; i < 6; i++) {static bool EachIsSame = true;static bool isOrderedInc = true;static bool isOrderedDec = true;static bool isSameWithOld = true;if (New[i] != New2[i])return false;if ('0' > New[i] || '9' < New[i])return false;if (isSameWithOld && New[i] != Old[i])isSameWithOld = false;if (i < 5) {if (EachIsSame && New[i] != New[i + 1]  )EachIsSame = false;if (isOrderedInc && New[i] != New[i + 1] - 1)isOrderedInc = false;if (isOrderedDec && New[i] != New[i + 1] + 1)isOrderedDec = false;}else return !(isSameWithOld || EachIsSame || isOrderedInc || isOrderedDec);}return true;
}

测了下都通过了。

上上周五去二面了,之前接到二面通知还挺高兴的,还以为过了一面,结果好像去了一面的人都去二面了。然后所有岗位的就两个面试官轮着面,其中一个还是HR。我还是第一次遇到这样的,不知怎么形容。

二面HR问我的核心卖点是什么,问以前单位离职原因,问期望薪资。技术让我挑一个最值得讲的项目讲,然后问我最大的难点在哪。后来问,有一个很大的文件,比如一个G,要怎么传比较好。我说切成多片,多线程传输。他感觉不是很满意。但也没说应该怎么传。后来我问了几个朋友,也都说会切片传输。算上那个可有可无的心理测试,等了快有一个半小时,然后面试十分钟不到就灰溜溜的回去了,当然之后也没后续了。

招银科技2017 c++ 面试题相关推荐

  1. python简单笔试题,招银科技2017年笔试题,使用python进行简单的字符串压缩

    今天心血来潮,想起一道招银笔试题.题目是这样的,利用python,或shell语言进行字符串压缩. 整理一下思路 ,类似于c语言用指针操作数组,这里面有个陷阱,x在list中遍历时 , 不要轻易去改l ...

  2. 招银科技2018春招线上笔试题

    招银科技2018春招线上笔试题 文章目录 招银科技2018春招线上笔试题 专业知识 1.选择题(30道) 2.简答题 (1道) 3.数据库题(4道) 4.算法题(2道) 心理测试(100道) 总结 专 ...

  3. Seeker的奇妙求职历险(招银科技一面)

    招银科技一面 前言 Redis 缓存雪崩 集合 锁 ReentranLock 可重入锁 公平锁 读写锁 数据库 Mybatis like语句注意事项 事务 子事务如何获取注解 事务传播行为 单例模式 ...

  4. 招银科技在线笔试(2018.3.12)

    招银科技在线笔试分为两部分: 第一部分(专业技能/120min): 一.选择题30道: 主要包含计算机网络,代码阅读(C++和Java),Sql语句阅读和一道数字推理. 如:SRAM和DRAM,C结构 ...

  5. 互联网公司校招Java面试题总结及答案——招银科技

    部分重复的我已经去掉了,所以显得比较少,其他请参看我的系列文章: 互联网公司校招Java面试题总结及答案--乐视.滴滴.华为 互联网公司校招Java面试题总结及答案--CVTE 互联网公司校招Java ...

  6. 招银科技2023提前批秋招面试经验

    个人基本情况:中上游211本硕,非科班,有上线项目经历,无实习. 投递岗位:软件开发工程师(Java) 主要过程:(1)8月26日投递简历 (2)8月30日完成测评 (3)9月5日完成笔试内容,形式为 ...

  7. 校招面试题3--去哪/微店/蘑菇街/招银科技

    4.有1万个左右的脏词,每次发帖要判断帖子里边是否包括有脏词,数据库应该如何设计 可以建立一个脏词字典表,写好函数判断帖子正文里面是否有脏词.然后再这个帖子正文字段上面建立check 约束. 4.li ...

  8. 招银网络软件测试合肥面试题,【招银网络科技面试|面试题】-看准网

    面试官的问题: 问看到简历中的项目,简单介绍一下用到的框架 答这个项目主要是学校实训的项目,给的选题去做的,使用到了SSH的三个框架.其中Spring主要使用了IoC功能,利用Spring的Bean容 ...

  9. java面试题_招银科技一面_java面经汇总

    题目来自牛客,  题的答案都是我个人理解的或网上的参考,仅仅只作为复习用.因个人水平有限,不合理的地方请多多指正. 自我介绍,着重说自己的优点 略   (是不是有初高中课后习题的那种感觉,(* ̄︶ ̄) ...

最新文章

  1. swagger怎么扫描多个包_Swagger快速入门
  2. uva 815之理解诡异的海平线题目之不容易
  3. 小项目--bank1
  4. 1047:判断能否被3,5,7整除
  5. 大型网站的负载均衡器、db proxy和db
  6. 数学_最小二乘问题的求解
  7. STM32——库函数版——12864点阵显示屏驱动
  8. 一个开源的网页画板,真的太方便了
  9. Java:关于“StringBuilder“的运用
  10. H5+css+js前端特效源代码:发光动画按钮:上传按钮
  11. Anaconda Prompt 用法全集
  12. 产品经理入门——需求收集
  13. 我的大三一年职业规划,预期毕业目标
  14. Java面试题:GC 是什么? 为什么要有GC?
  15. 湖北武汉劳务员报考劳务员的工程劳务管理建筑七大员报考
  16. Blockchain for Internet of Energy management: Review, solutions, and challenges
  17. 2D - 2D 点对 求解基础矩阵 F 本质矩阵E 单应矩阵 H 进而求 旋转矩阵 R 和 t
  18. Linux例行性工作之系统配置文件(用户级crontab -e与系统级/etc/crontab)
  19. MYSQL经典题型和一部分mongodb题
  20. 2019-2020 PHP面试-12家(答案全)

热门文章

  1. SmartImageView的简单使用
  2. Arduino ST7789 240*240 1.3寸 TFT —— 新屏点亮篇
  3. Java微信公众号--2--微信菜单和消息管理
  4. Pinterest 架构:两年内月 PV 从零到百亿【翻译】
  5. Power Map 更新日志
  6. 如何查看期刊论文的分类及分级
  7. Fanuc数据控机床数据采集Focus2基于c#的数据采集,基于Focus2开发版,可以采集发那科数据机床信息
  8. 论文阅读—Towards Good Practices for Very Deep Two-Stream ConvNets
  9. cpu和gpu的区别是什么?GPU是显卡吗?
  10. 不是中科曙光,也不是VMware,中科睿光“一年考”