一、Linuxc/c++服务器开发面试题 1.求下面函数的返回值(微软) int func(x) { int countx = 0; while(x) { countx ++; x = x&(x-l); } return countx; } 假定x = 9999 答案:8 思路:将x转化为2进制,看含有的1的个数。 2.什么是''引用"?申明和使用''引用“要注意哪些问题? 答:引用就是...
在服务器开发面试中,常常会遇到一些相关的问题,本文将从多个方面介绍C服务器开发面试题及其答案。 二、网络编程 1.什么是网络编程? 网络编程是指通过网络进行通信的编程技术。C语言中,可以使用socket库进行网络编程。 2. socket库的常用函数有哪些? 常用的socket库函数包括socket()、bind()、listen()、accept()、...
9、在网络中有两台主机A和B,并通过路由器和其他交换设备连接起来,已经确认物理连接正确无误,怎么来测试这两台机器是否连通?如果不通,怎么来判断故障点?怎么排除故障? 10、网络编程中设计并发服务器,使用多进程 与 多线程 ,请问有什么区别? 11、网络编程的一般步骤 12、TCP的重发机制是怎么实现的? 13、TCP为什么...
1)PHP弱类型语言,一种脚本语言,对数据的类型不要求过多,较多的应用于Web应用开发,现在好多互联网开发公司的主流web后台开发语言,主要框架为mvc模型,如smarty,yaf,升级的PHP7速度较快,对服务器的压力要小很多,在新浪微博已经有应用,对比很明显。 2)C/C++开发语言,C语言更偏向硬件底层开发,C++语言是目前为止我认为...
CC++Linux后端服务器10家大厂开发面试题全集进群:1023370945 3. 设计高并发系统数据库层面该如何设计? 数据库锁有哪些类型?如何实现? 1. 分库分表: 同样量的数据平均存储在不同数据库相同表(或不同表)中,减轻单表压力,如果还是很大,就可以每个库在分多张表,根据hash取值或者其他逻辑判断将数据存储在哪张表中 ...
网络编程中设计并发服务器,使用多进程 与 多线程 ,请问有什么区别? 1,进程:子进程是父进程的复制品。子进程获得父进程数据空间、堆和栈的复制品。 2,线程:相对与进程而言,线程是一个更加接近与执行体的概念,它可以与同进程的其他线程共享数据,但拥有自己的栈空间,拥有独立的执行序列。
第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认; 第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态; 第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack...
精确地说就是,优化器在用到这个变量时必须每次都小心地重新读取这个变量的值,而不是使用保存在寄存器里的备份。下面是volatile变量的几个例子: 1). 并行设备的硬件寄存器(如:状态寄存器) 2). 一个中断服务子程序中会访问到的非自动变量(Non-automatic variables) (中断嵌套) 3). 多线程应用中被几个任务共享的...
第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态; 第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手 ...
预处理器(Preprocessor) 1 . 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题) #define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL 我在这想看到几件事情: 1) #define 语法的基本知识(例如:不能以分号结束,括号的使用,等等) ...