自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(60)
  • 收藏
  • 关注

原创 笔试整理 八

1.信号与槽机制让一个对象产生的信号可以被另一个对象接受并处理。QT 基本上所有的对象都继承QObject 对象,在这个对象中有一个静态函数connect();QObject::connect(&button,SIGNAL(),&w,SLOT());前两个参数是信号,后两个参数是槽。经过信号与槽的连接,按钮button的close()与窗口w close()函数就进行了绑定。调用c

2017-11-08 21:55:09 469

原创 笔试整理 七

1.程序和进程程序是放到磁盘的可执行文件进程是指程序执行的实例2.进程是一个具有独立功能的程序的实例,每个进程都有自己的地址空间和执行状态每个进程的祖先进程都是init进程,其PID 为 1 ,可以用pstree查看树状关系3.进程由 程序 数据  进程控制块 组成4.进程互斥:当有若干个进程都要使用某一 共享资源 时,任何时候最多允许一个进程使用,其他使用该资源的进程

2017-11-06 00:38:32 387

原创 笔试整理 六

1.哈夫曼树(最优二叉树)给定n个权值作为n个叶子结点,构造一棵二叉树,若带权路径长度达到最小,称这样的二叉树为最优二叉树,也称为哈夫曼树(Huffman Tree)。哈夫曼树是带权路径长度最短的树,权值较大的结点离根较近。2.基本术语编辑哈夫曼树(霍夫曼树)又称为最优树.1、路径和路径长度在一棵树中,从一个结点往下可以达到的孩子或孙子结点之间的通路,称为路径。通路中分

2017-11-05 00:18:00 375

原创 笔试整理 五

1.有符号数最高位是 1 ,所以为负数负数原码转补码是符号位不变,其他位取反,然后加 1 ;(补码转原码,顺序相反)无符号数的原码和补码 一样。a = 0xe0;补码是 1110 0000 ,转为原码 是 1010 0000signed  char 转 sighed int 将a的原码转化为32位编码2.能在类中初始化的成员只有静态常量成员class A

2017-11-04 00:22:21 317

转载 常见面试排序: http://blog.csdn.net/pi9nc/article/details/12220851

快速排序:选取第一个元素作为基准值:1. /************************************************** 2.  函数功能:对数组快速排序                        3.  函数参数:指向整型数组arr的首指针arr;           4.            整型变量left和right左右边界的下标    

2017-11-03 10:29:02 413

原创 笔试整理四

2017.10.27

2017-10-27 23:57:28 236

原创 笔试整理三

1. 提供可高数据传输,流控的是OSI的传输层2. 同一个类的对象使用不同的内存,但静态成员共享相同的内存空间3. 用于实现接口的关键字:PHP 类是单继承,也就是不支持多继承,当一个类需要多个类的功能时,继承就无能为力了,为此 PHP 引入了类的接口技术。如果一个抽象类里面的所有方法都是抽象方法,且没有声明变量,而且接口里面所有的成员都是 public 权限的,那么这种特殊的抽象

2017-10-26 22:43:13 225

原创 笔试整理二

1. Internet 是有ARPANET发展而来2. NFS(Network File System)即网络文件系统3. OSI参考模型七层:物理层,数据链路层,网络层(IP,路由器,三层交换机),传输层(TCP/UDP),会话层,表示层,应用层4. 软件测试:黑盒/白盒测试。。。5. 编译错误,连接错误,运行错误http://www.cnblogs.com/lmf-tech

2017-10-25 23:24:47 220

原创 牛客笔试整理 一

#include #include #include using namespace std;int main1(){ int a = 1; int b = 32; printf("%d,%d\n",a<<b, 1<< 32); return 0;}int main2(){ int a[5] = {1,2,3,4,5}; int *ptr = (int *)(

2017-10-23 20:10:13 667

原创 C++ 基础知识十

一.友元函数和成员函数选择方法1.当无法选择左操作数时,使用全局函数进行重载2.=,[],(),->操作符只能通过成员函数进行重载二.用友元函数和成员函数重载> 运算符cin 是istream和ostream 是C++预定义的类cin 是 istream 的对象,cout 是 ostream 的对象运算符 运算符 >> 由 istream 重载为提取操作,用于输入基本类

2017-10-22 15:02:04 235

原创 C++ 基础知识九

一.运算符重载所谓重载,就是重新赋予新的含义。函数重载就是对一个已有的函数赋予新的含义,使之实现新功能,因此,一个函数名就可以用来代表不同功能的函数,也就是”一名多用”。 运算符也可以重载。实际上,我们已经在不知不觉之中使用了运算符重载。例如,大 家都已习惯于用加法运算符”+”对整数、单精度数和双精度数进行加法运算,如5+8, 5.8 +3.67等,其实计算机对整数、单精度数和双精度数

2017-10-10 22:55:14 213

原创 C++ 基础知识八

一.全局函数和成员函数1.把全局函数转换为成员函数,通过this指针隐藏左操作数2.成员函数转换为全局函数,多一个参数#include class Text1_1{public: Text1_1(int a) { this->m_a = a; } void print() { printf("a = %d\n",m_a); } //全局函数转化为内部函数

2017-10-10 15:14:45 179

原创 C++ 基础知识七

一.静态成员变量和静态函数关键字 static 用于说明一个类的成员,静态成员提供了一种同类对象的共享机制。 把一个类的成员说明为 static 时,这个类无论有多少个对象被创建,这些对象共享这个 static 成员  静态成员局部于类,它不是对象成员,在类的外部进行初始化#include using namespace std; class Test{public:

2017-10-10 11:20:58 224

原创 C++ 基础知识六

一.浅拷贝和深拷贝默认拷贝构造函数可以完成对象的数据成员值得简单复制,但是当对象的数据资源是指针时,默认拷贝构造函数只会进行地址和值的复制,不会复制空间,导致析构函数析构两次,同一个空间被释放了两次,编译时会报错。浅拷贝:#include #include #include class Text6_1{public: Text6_1(int a,int b,char *n

2017-10-10 10:09:33 213

原创 C++ 基础知识五

一.面向对象什么是对象?你能看到的万事万物,都是对象,比方说桌子,电脑,水杯…..。”万物皆对象。”什么是面向对象?面向对象简称 OO(Object Oriented),一种编程思想。面向对象编程,简称OOP(Object Oriented Programming)。抽象出思维,不再是线性的思维方式。举例:大象装冰箱。  线性的思维:打开冰箱门,装进大象,关上冰

2017-10-05 13:56:22 223

原创 C++ 基础知识四

一.内联函数c++中可以用const常量代替宏常量定义,那是否可以用某些东西代替(宏代码片段)宏函数呢?c++中用内联函数代替宏代码片段,内联函数用inline关键字声明:inline int func(int a,int b){return (a }    内联函数声明必须和inline关键字结合在一起,否则编译器会直接忽略内敛请求。内联函数在最终生成的代码中是没有定

2017-10-05 12:38:48 183

原创 C++基础知识三

一.引用 1.变量名1.1变量名实质上是一段连续存储的空间的别名,类似于门牌号,程序中通过变量来申请并命名内存空间  1.2通过变量名来使用存储空间,那一段连续的内存空间是否可以有一个别名?2.c++引用概念引用可以看作一个已定义的变量的别名,语法:type &name = var#include int main(){ // 定义一个int型变量a,在内存

2017-10-04 17:23:50 241

原创 C++ 基础知识二

一. 函数参数(c和c++)#include // 如果一个函数没有参数,C++认为这是一个无参函数,不能给函数传参void func(){ printf ("hello world\n");} // C语言中一个无参函数定义是用void进行填充void func1(void) // 等价于 func1(){}// C++中函数参数必须要有类型void fun

2017-10-04 16:46:14 266

原创 C++ 基础知识一

一,引入命名空间一个中大型软件往往由多名程序员共同开发,会使用大量的变量和函数,不可避免地会出现变量或函数的命名冲突。当所有人的代码都测试通过,没有问题时,将它们结合到一起就有可能会出现命名冲突。 例如小李和小韩都参与了一个文件管理系统的开发,它们都定义了一个全局变量 fp,用来指明当前打开的文件,将他们的代码整合在一起编译时,很明显编译器会提示 fp 重复定义(Redefinitio

2017-09-13 20:41:15 248

原创 网络编程之并发服务器(线程,进程)

一 多线程服务器:服务器代码实现:#include #include #include #include #include #include #define PORT 9999 //初始化套接字int INIT_SCOKET(){ int listen_socket = socket(AF_INET, SOCK_STREAM, 0); if (liste

2017-08-19 22:22:03 406

原创 网络编程之服务器与客户端的建立

一什么是 套接字:网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个Socket。Socket的英文原意是“插座”,通常称之为套接字,来描述IP地址和端口,是一个通信链的句柄,用来实现不同虚拟机或者计算机之间的通信。 在Internet上的主机一般运行了多个服务软件,同时提供几种服务。每种服务都打开一个Socket,并绑定到一个端口上,与不同客户端的不同服务对应着

2017-08-19 21:53:22 1269

原创 进程间通信之消息队列

一消息队列:1,消息队列就是一个消息的链表,把消息看做一个记录,具有特定格式。 进程可以向其中按照一定的规则添加新消息;另一些进程则可以从消息队列中读走消息。2,分类:POSI消息队列,系统V消息队列(大量使用)3,键值:消息队列的内核持续性要求每个消息队列都在系统范围内对应唯一的键值,所以,要获得一个消息队列的描述符,必须提供该消息队列的键值。#include #includ

2017-08-15 23:42:46 274

原创 进程通信之信号量

一 信号量(信号灯)概念:信号量提供一种访问机制,让一个临界区同一时间只有一个进程在访问他,也就是说信号量用来协调进程对共享资源的访问的。信号量是一个特殊的变量,程序对其访问都是原子操作,只允许对他进行等待(P)和发送信息(V)的操作。最简单的信号量只能取0和1的变量,这也是信号量最常见的一种形式,叫做二进制信号量。可以取多个正整数的信号量称为信号量。信号量与其他进程间通信方式不大相同

2017-08-14 23:27:00 562

原创 进程通信之共享内存

一 共享内存:多个进程共享的一部分物理内存。一个进程向共享内存写入数据,共享这个内存区域的所有进程就可以立刻看见其中数据。1,共享内存的实现:创建共享内存,映射共享内存(将这段创建的共享内存映射到具体的进程空间去)创建一个共享内存:int shmget(key_t key, int size, int shmflg)key:1,0/IPC_PRIVATE:当key取值为IPC_

2017-08-14 22:28:07 249

原创 进程间通信之管道

一 管道通信:1,管道:管道是单向的、先进先出的,它把一个进程的输出和另一个进程的输入连接在一起。一个进程的尾部写入数据,另一个进程的头部读出数据。2,进程间数据的传递:popen和pclose #include        FILE *popen(const char *command, const char *type);       int pclose(FILE *s

2017-08-13 22:09:18 253

原创 进程控制编程之僵尸进程、守护进程创建、进程等待

一  僵尸进程:那些虽然已经终止的进程,但进程描述符仍然保留在内存中(进程描述符占有极少的内存空间),等待其父进程为其收尸。1,僵尸进程是子进程比父进程先终止:#include #include #include int main(){ pid_t pid = fork(); if(pid == -1) { perror("fork "); return -1;

2017-08-11 23:34:30 311

原创 突发奇想的分享一张Windows经典图片

这张经典的Bliss壁纸是名叫“Bliss(无比幸福)”,由美国摄影师查尔斯·奥利尔(Charles O'Rear )1996年在美国加利福尼亚州的索诺马县拍摄的,下面就是该该照片取景的原地点。

2017-08-11 21:50:42 762

原创 进程控制编程之fork() exec函数族  终止函数

一 进程创建fork()#include  pid_t fork(void)功能:创建子进程      fork的奇妙之处在于它被调用一次,却返回两次,它可能有三种不同的返回值:1、在父进程中,fork返回新创建的子进程的PID;2、在子进程中,fork返回0;3、如果出现错误,fork返回一个负值int main(){ pid_t pid = fork

2017-08-11 00:42:25 419

原创 进程控制之基础概念

1 ,进程:一个具有一定独立功能的程序的一次运行活动进程是一个正在执行的实例;2,进程ID:每个进程都有一个ID(正整数),唯一标识系统的进程;每个进程都有一个创建他的进程,叫父进程;进程 ID(PID)父进程ID(PPID)启动进程的用户ID(UID)getpid()头文件: #include #include pid_t g

2017-08-10 23:59:07 343

原创 手动创建两个文本文件text1.txt,text2.txt,要求编程创建text3.txt,实现text1.txt和text2.txt文件中除去首行和末尾对应的数据相加

/*text1.txt text2.txt text3.txtbegin begin begin10 11 12 15 16 17 25 27 29 20 21 22 25 26 27 45 47 4930 31 32 35 36 37 65 67 69end

2017-08-08 20:28:38 1931

原创 标准I/O函数之fopen, fread, fwrite,fgetc,fputc

#include #define SIZE 1024/*I/O缓冲:有了缓冲机制以后,多个读写操作可以合并为一次系统调用,减少了系统调用的次数,将大大提高程序的运行效率。标准I/O中,一个打开的文件称为流(stream),流可以用于读(输入流)、写(输出流)或读写(输入输出流)。每个进程在启动后就会打开三个流,分别对应:stdin(标准输入流)、stdout(标准输出流)以

2017-08-07 22:21:58 558

原创 文件操作的系统调用之write ,close, lseek

write:#include ssize_t write(int fd, const void *buf, size_t count);fd:要写入的文件的描述符。buf:要写入的数据所存放的缓冲区。count:要写入的字节数,并不是缓冲区的大小返回值:若成功返回已写的字节数,出错则返回-1并设置变量errno的值。int main3(){ int fd = open("b

2017-08-07 22:18:28 712

原创 文件操作的系统调用之open,read

#include #include #include #include #include #include #define SIZE 1024/*open()#include #include #include int open(const char *pathname, int flags, mode_tmode);pathname:要打开或要创建的文件名称f

2017-08-06 20:50:47 2628

原创 用两个栈实现一个队列

#include #include #define MAXSIZE 10typedef struct _seqstack{ int data[MAXSIZE]; int top;}seqstack;int Initstack(seqstack *s)//置空栈{ s->top = -1; return 0;}int Display(seqstack *s)//显示队

2017-08-04 17:39:44 149

原创 排序方法之冒泡(鸡尾酒)、选择、插入(二分插入)、希尔排序

#include void swap(int *a, int i, int j){ int tmp = a[i]; a[i] = a[j]; a[j] = tmp;}void print(int *a,int len){ int i; for(i = 0;i < len;i++) { printf("%4d",a[i]); } printf("\n");}i

2017-08-03 20:49:00 215

转载 C语言经典一百例

经典C语言程序设计100例1.数字排列    2.奖金分配问题    3.已知条件求解整数    4.输入日期判断第几天5.输入整数进行排序    6.用*号显示字母C的图案  7.显示特殊图案    8.打印九九口诀9.输出国际象棋棋盘    10.打印楼梯并按条件打印笑脸   11.经典兔子问题   12.判断素数13.水仙花数问题   14.正整数分解质因数   15.学习成

2017-08-01 20:44:00 8917 2

原创 数据结构之二杈树的实现

//头文件BTREE.h#ifndef _BTREE_H_#define _BTREE_H_#define true 1#define false 0#define BRIGHT 1#define BLEFT 0typedef char BTreeData;typedef struct _BTreeNode{ BTreeData data; struct _BTre

2017-07-31 11:40:04 439

原创 数据结构之树的实现

#ifndef _TREE_H_#define _TREE_H_#include "error.h"#define false 0#define true 1typedef _TreeNode;typedef struct _ChildNode //孩子结点型链表{ struct _TreeNode *childNode; //孩子结点指向父结点的指针 struct _C

2017-07-30 22:44:11 228

原创 树的创建与数据打印

//头文件 TREE.h#ifndef _TREE_H_#define _TREE_H_#define false 0#define true 1typedef _TreeNode;typedef struct _ChildNode //孩子结点型链表{ struct _TreeNode *childNode; //孩子结点指向父结点的指针 struct _ChildNo

2017-07-29 16:50:49 301

原创 链栈的主要操作

#ifndef _ERROR_H //error.h 头文件#define _ERROR_H#include #define ERROR -1#define FULL_ERROR -2#define EMPTY_ERROR -3#define MALLOC_ERROR -4int errno; //错误号void myerror(char *str);char

2017-07-28 01:26:50 273

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除