笔记面试中的基础知识
文章平均质量分 73
Findway_
我的博客:lhgaaa.github.io
展开
-
gdb调试相关
占坑原创 2017-09-08 10:04:50 · 257 阅读 · 0 评论 -
面向对象的特征(占坑)
(1)封装性:封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。 在C++中类中成员的属性有:public, protected, private,这三个属性的访问权限依次降低。 (2)继承性:继承是指这样一种能力:它可以使用现有类的所有功能,并在无需重新编写原来的类的情况下对这些功能进行扩展。原创 2017-08-18 09:40:22 · 175 阅读 · 0 评论 -
gdb调试core文件快速定位core dump位置
gdb调试core文件快速定位core dump位置core dump又叫核心转储, 当程序运行过程中发生异常, 程序异常退出时, 由操作系统把程序当前的内存状况存储在一个core文件中, 叫core dump. (linux中如果内存越界会收到SIGSEGV信号,然后就会core dump)在程序运行的过程中,有的时候我们会遇到Segment fault(段错误)这样的错误。这种看起来比较困难,因原创 2017-09-14 09:55:25 · 2697 阅读 · 0 评论 -
操作系统常考面试题
http://blog.csdn.net/youngchang06hpu/article/details/8009947原创 2017-09-14 09:22:29 · 436 阅读 · 0 评论 -
生产消费者模型
生产者/消费者模型 原文地址:http://blog.csdn.net/sicofield/article/details/8849392 产者/消费者模型描述如下:有一个或多个生产者生产某种类型的数据,并防止在缓冲区(可以是数组也可以是队列等数据结构)中;有一个消费者可以从缓冲区中取数据,每次取一项;系统保证避免对缓冲区的重复操作,也就是说在任何时候只有一个主体(生产者或消费者)可以访问缓转载 2017-09-13 10:09:43 · 412 阅读 · 0 评论 -
操作系统和linux编程常考题目
1、请用普通的互斥锁编程实现一个读写锁参考答案: 下面是可参考的伪代码:count_mutex = mutex_init();write_mutex = mutex_init();read_count = 0;void read_lock { lock(count_mutex); read_count++; if (read_count == 1) { lock(write_mute原创 2017-08-26 19:27:56 · 2870 阅读 · 0 评论 -
c/c++常考面试题(二)
一、实现一个Memcpy函数void *memcpy(void *dst, const void *src, size_t len){ if(NULL == dst || NULL == src){ return NULL; } void *ret = dst; if(dst char *)dst >= (char *)src + len){ //没有内存重叠,从低地原创 2017-08-26 19:15:30 · 337 阅读 · 0 评论 -
进程和线程
进程和线程以及死锁参考:进程和线程的区别一个程序至少有一个进程,一个进程至少有一个线程。线程的划分尺度小于进程,使得多线程程序的并发性高。进程在执行过程中拥有独立的内存单元,而多个线程共享内存,从而极大的提高了程序的运行效率。线程在执行过程中与进程还是有区别的。每个独立的线程有一个程序运行的入口,顺序执行序列和程序的出口。但是线程不能够独立运行,必须依存在应用程序中,由应用程序提供多个线程执行控制。原创 2017-08-23 10:26:01 · 191 阅读 · 0 评论 -
虚拟内存(占坑)
占坑原创 2017-08-23 10:27:47 · 428 阅读 · 0 评论 -
c/c++常考的面试题
一、分析下面代码有什么问题?void test1(){ char string[10]; char* str1 = "0123456789"; strcpy( string, str1 );}参考答案: 字符串str1需要11个字节才能存放下(包括末尾的’\0’),而string只有10个字节的空间,strcpy会导致数组越界; 二、 分析下面代码有什么问题?void test2(){原创 2017-08-25 20:41:36 · 544 阅读 · 0 评论 -
C语言中常见库函数编写(占坑)
strcpy函数:如果编写一个标准strcpy函数的总分值为10,下面给出几个不同得分的答案: 2分 void strcpy( char *strDest, char *strSrc ){ while( (*strDest++ = * strSrc++) != ‘\0’ );}4分 void strcpy( char *strDest, const char *strSrc ) //将原创 2017-08-18 09:51:26 · 413 阅读 · 0 评论 -
网络基础常考面试题
一、OSI,TCP/IP,五层协议的体系结构,以及各层协议答:OSI分层 (7层):物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。TCP/IP分层(4层):网络接口层、 网际层、运输层、 应用层。五层协议 (5层):物理层、数据链路层、网络层、运输层、 应用层。每一层的协议如下:物理层:RJ45、CLOCK、IEEE802.3 (中继器,集线器)数据链路:PPP、FR、HDLC原创 2017-08-25 20:07:46 · 765 阅读 · 0 评论 -
const关键字相关
const作用:const在c中的作用和cpp中的略有不同。在c中经过const修饰的变量并不是绝对的常量,例如Cconst int a = 0; //定义了一个c语言中的常量int *pa = &a; //定义了一个普通指针指向常量a,这中间经过了强制类型转换*pa = 2; //a的值可以通过pa指针修改printf("%d %d\n", a, *pa);原创 2017-08-18 10:48:17 · 196 阅读 · 0 评论 -
gdb调试多进程和多线程命令
gdb调试多进程和多线程命令原文地址:http://blog.csdn.net/pbymw8iwm/article/details/7876797默认设置下,在调试多进程程序时GDB只会调试主进程。但是GDB(>V7.0)支持多进程的分别以及同时调试,换句话说,GDB可以同时调试多个程序。只需要设置follow-fork-mode(默认值:parent)和detach-on-fork(默认值:o转载 2017-09-09 14:58:01 · 407 阅读 · 0 评论