自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 郝学长项目__2018.06.30

面试的时候心态一定要好。就业方向:Linux方向(1)线程、进程、协程。(2)内存:ptmalloc、Nginx(3)网络语言其实没啥用。它们都是为这三部分服务的。面试的时候不要怂,就给他扯。攒面试经验,有公司就投。tcpdump抓包平时常用的一个命令:网络中到处都是数据包。运行起来一个进程。hggLinux回车是:\nsudo tcpdump -i +网卡+port 80sudo tcpdump...

2018-06-30 17:03:55 152

原创 Dos中tree命令的使用__2018.06.21

将结果输出在指定文件中。

2018-06-21 17:22:26 821

原创 赋值运算符重载函数__2018.06.17

代码:#include <iostream>using namespace std;class MyInt{public: MyInt(int x):data(x) {} void operator=(int x); private: int data; friend ostream& operator<<(ostream &out, c...

2018-06-17 17:10:09 137

原创 问题__2018.06.17

代码:#include <iostream>using namespace std;class a{public: a(int x):data(x) {}private: int data; friend ostream& operator<<(ostream &out, const a &src);};ostream& ...

2018-06-17 12:01:43 120

原创 枚举__2018.06.17

为什么会有枚举这种数据类型呢?代码:#include<stdio.h>/* 定义枚举类型 */enum DAY { MON=1, TUE, WED, THU, FRI, SAT, SUN };void main(){ /* 使用基本数据类型声明变量,然后对变量赋值 */ int x, y, z; x = 10; y = 20; ...

2018-06-17 11:30:40 161

原创 不懂的问题__2018.06.17

代码:#include "head.h"#include <iostream>static int b = 10;int main(){ extern int a; a = 20; b = 20; std::cout << "a=" << a << std::endl; std::cout << "b=

2018-06-17 10:46:17 138

原创 用extern声明外部变量是不能进行初始化__2018.06.17

为什么会这样呢?因为“extern int a;”只是声明而不是定义,声明是不会为变量开辟内存空间的,自然无法对其进行初始化的操作。

2018-06-17 10:15:48 6188 2

原创 KMP算法__2018.06.17

代码:#include <iostream>#include <string.h>using namespace std;int ViolentMatch(char* s, char* p){ int sLen = strlen(s); int pLen = strlen(p); int i = 0; int j = 0; while (i < s...

2018-06-17 00:35:21 126

原创 变量的初始化__2018.06.16

代码:#include <iostream>int main(){ int a(10); int b = 20; std::cout << "a=" << a << std::endl; std::cout << "b=" << b << std::endl;

2018-06-16 20:08:13 114

原创 转义字符\a的使用__2018.06.16

代码:#include <iostream>#include <windows.h>int main(){ for (int i = 0; i < 10; ++i) { std::cout << "\a"; std::cout << i<<std::endl; Sleep(2000); } return ..

2018-06-16 19:46:24 2395

原创 vector容器输出运算符的重载__2018.06.16

代码:#include <iostream>#include <vector>using namespace std;ostream& operator<<(ostream &out,vector<int>&src){ for (vector<int>::iterator it = src.begin...

2018-06-16 17:24:54 1616

原创 execl替换进程__2018.06.14

代码:#include <stdio.h>#include <unistd.h>#include <sys/types.h>#include <sys/wait.h>int main(){ pid_t pid; pid=fork(); if(0==pid) { printf("这是子线程,p...

2018-06-14 23:57:01 331

原创 郝学长项目(第二节课)__2018.06.14

翻墙软件:通过代理(远端)服务器翻墙。虽然你的浏览器不能翻墙,但远端的代理服务器是可以访问外部的网络的。所以你可以将要请求访问的网页发给代理服务器,通过代理服务器访问,并返回给用户。vim的配置文件是vimrcaccept等待一个客户端来链接。调度器。作业:用telnet做客户端。getsocketname();七层负载。负载原理:将请求定位到指定服务器的方法。400客户端错误。500服务器错误。...

2018-06-14 22:15:12 214

原创 Vector的实现__2018.06.14

代码:Vector0.h#ifndef VECTOR0_H#define VECTOR0_H#include "Ngx_pool.h"#include <iostream>using namespace std;template<typename T>class myallocater{public: //construct构造 destroy析构 ...

2018-06-14 15:58:44 204

原创 Nginx内存池__2018.06.14

Nginx内存池各部分数据结构示意图:

2018-06-14 09:34:33 203

转载 Nginx内存池__2018.06.13

  Nginx以高效,节省内存著称。到底如何高效,如何节省内存,这个得真正了解其设计原理才能知道,分析源码是了解其原理最直接的方法。Nginx对非常多的基础设施(红黑树 内存池 连接池 hash表)都重复造了轮子,我们来看看为什么要这么做。  对于c系统,最难的常常是内存管理,随着系统复杂度的提高,各种内存问题都出来了,很难管理,对于系统的长期稳定运行构成影响。所有的内存池都有一个共同的特点,那就...

2018-06-13 20:31:55 108

原创 String__2018.06.13

代码#include <iostream>#include <string>#include <vld.h>using namespace std;class String{public: String(char *ptr = NULL) { if (ptr != NULL) { mpstr = new char[strlen(...

2018-06-13 00:19:03 106

原创 项目(郝学长)__2018.06.12

赵老师的项目是周天开始2018年6月17(端午节放假)不上了。郝学长的模拟面试是下周(第16周)开始。周四周五周六,提前10分钟过来。端午节放假期间调到周二、周四上郝学长的项目,其余时间周二周六上。即时通信。上机课可来可不来。来了答疑。想和同学一起做,结果发现同学太差,我就自己一个人做。三个项目(可三选一):http协议、IE、tcp dump、负载均衡器。 #include <stdboo...

2018-06-12 22:05:44 135

原创 c++第24节课(C++课程总览)__2018.06.10

智能指针:多线程访问共享对象。强弱智能指针。智能指针使用在多线程环境中。强烈推荐一本书《Linux多线程服务端编程module网络库》看第一章。编写线程安全的类。竞态条件。由于CPU调用顺序不同,结果不同。内存:数据段、堆、栈。多线程共享的是数据的和堆。栈是每个线程所私有的。线程的运行可以看做并发的运行。运行结果不可预期。多线程环境中,操作共享对象。在访问共享对象的时候,另外的线程可能正在析构或已...

2018-06-10 21:31:25 169

原创 Linux中fork()复制进程的使用__2018.06.10

代码: #include <stdio.h> #include <unistd.h> int main() {   pid_t pid; pid=fork(); if(pid==0) { printf("这是子线程,pid=%d\n",getpid()); } else if(pid>...

2018-06-10 11:12:23 132

原创 Linux文件上传下载项目代码__2018.06.09

代码(ser.c)#include<stdio.h>#include<stdlib.h>#include<unistd.h>//linux系统调用有关的头文件#include<string.h>#include<assert.h>#include<sys/socket.h>#include<arpa/inet...

2018-06-09 20:17:02 415

转载 vs2015怎样更改背景图片__2018.06.09

 

2018-06-09 10:46:18 1717

原创 c++第23次课老师代码(智能指针)__2018.06.09

代码:// 20180608.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"/*C++23次课 智能指针int *p = new int; 裸指针裸指针的缺点:1.必须手动释放资源2.由于程序逻辑的错误,导致释放资源的代码没有被调用到3.程序运行过程中,发生异常,导致释放资源的代码没有被调用到智能指针 智能(不管程序运行发生...

2018-06-09 09:16:08 165

原创 c++第23次课(智能指针)__2018.06.08

90%的情况都是在使用无序容器。函数模板可以不适用<int>它可以进行类型推演。哈希统计。键、值。进行哈希映射。大文件的东西分别放到小文件中。对于服务器来说,磁盘会很大。在两个文件中查重。给了不看,和不给一样。智能指针。裸指针:直接*访问的指针。就是普通的指针。例如:int* p=new int;//裸指针裸指针的缺点:1.必须手动释放资源。2.由于程序逻辑的错误,导致释放资源的代码没...

2018-06-08 21:05:37 135

原创 C语言中的“Sastem( " pause " )”是什么意___2018.06.07

system就是调用从程序中调用系统命令(和shell命令)。 system("pause")就是从程序里调用“pause”命令; 而“pause”这个系统命令的功能很简单,就是在命令行上输出一行类似于“Press any key to exit”的字,等待用户按一个键,然后返回。...

2018-06-07 17:13:14 504

原创 c++第22次课__2018.06.03

堆可以应用于堆排序。当用堆做排序时一定要重写大于小于运算符重载函数。哈希统计与大堆小堆。这东西就是一点一点的积累。代码量太少了。topk问题查重哈希表、bitmap 找到数据的上限,最大值。#include <iostream>#include <unordered_map>#include <string>#include <time.h>...

2018-06-03 23:17:40 87

原创 随机产生1000000个随机数,统计每个随机数出现的次数__2018.06.03

1.#include <iostream>#include <unordered_map>#include <string>#include <time.h>using namespace std;int main(){ vector<int> vec; vec.reserve(100000); srand(time(...

2018-06-03 17:35:33 2700

原创 c++第21次课__2018.06.03

空间适配器:stack、queue(底层是二维数组)、priority_queue(在容器上建立了一个堆结构)在数组上建堆。多维数组本身也是一维的。vector<vector<int>>list<vector<int>>list容器适配器没有提供迭代器。因为它底层就没有提供数据结构。关联容器:#include <unorderered_set&...

2018-06-03 17:30:55 150

原创 c++海量数据查找前10个最小的数__2018.06.02

1#include <iostream>#include <vector>#include<queue>#include<time.h>using namespace std;int main(){ srand(time(0)); priority_queue<int> MyIntPriority_Queue; vec...

2018-06-02 16:41:42 1393

原创 Linux上课笔记(Linux文件上传下载:秒传、断点续传)__2018.06.02

1.用SQL语句查询数据库就可以了。2.用c++实现。单例模式:全局只有一个。文件夹的逻辑组织关系是系统帮我们维护的。自己把文件夹这一层做了。数据全部存于数据库中。用gdb调试可以跟踪代码的逻辑结构。不仅仅只是调试代码,寻找错误。需要每个人把自己写的东西整理出来,在文档中描述出来(把功能描述出来),配上截图。下次检查代码,不是下次课。把现有代码调好,bug全部解决的,功能全部实现了,不能有bug,...

2018-06-02 15:52:18 644

原创 Linux mysql数据库的配置__2018.06.02

运行级别。这样设置的话,以后开机MySQL会随机器自动启动。chkconfig mysqld off关闭自启动。MySQL使用的端口是3306先得链接上数据库、配置数据库。三次握手建立连接。连接3306号端口。访问数据库的客户端。连接数据库。通过相应的API接口进行相应操作。告诉数据库做什么操作。数据库是一堆数据,在磁盘上存储着。需要一个程序要去管理它,处理和客户端的通讯,并对数据库进行相应的操作...

2018-06-02 15:46:40 140

原创 Windows中安全弹出U盘的操作__2018.06.02

2018-06-02 10:01:36 2846

原创 c++第20次课__2018.06.01

CSDN上下载剑指offer源码。刷剑指offer上的题。今日头条的服务器就用的nginx。容器、迭代器、空间配置器c++的STL库:容器、迭代器、泛型算法迭代器:正向迭代器、反向迭代器、插入型迭代器。给类模板提供相应的函数模板,依赖编译器的类型推演。输入输出缓冲区,也可以当做容器区迭代它。泛型算法:二元函数通过绑定器,变成一元函数。泛型算法,迭代器。容器:顺序容器:  vector-->向...

2018-06-01 20:45:21 117

原创 vector容器的用法__2018.06.01

1.#include <iostream>#include <vector>using namespace std;int main(){ vector<int> MyIntVector; for (int i = 0; i < 10; ++i) { MyIntVector.push_back(i); } for (vector&...

2018-06-01 20:28:43 79

转载 大数的加减法__2018.06.01

BigNumber.h#ifndef BIGNUMBER_H #define BIGNUMBER_H #include <iostream> #include <string> class BigNumber{public: BigNumber(); BigNumber(std::string s_16); BigNumber(const Bi...

2018-06-01 14:59:49 128

空空如也

空空如也

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

TA关注的人

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