<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[倾耳听的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/qq_40222602</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; qq_40222602]]></copyright><item><title><![CDATA[php题目]]></title><link>https://blog.youkuaiyun.com/qq_40222602/article/details/88673364</link><guid>https://blog.youkuaiyun.com/qq_40222602/article/details/88673364</guid><author>qq_40222602</author><pubDate>Tue, 19 Mar 2019 21:09:39 +0800</pubDate><description><![CDATA[创建多级目录函数mkdir();

获取网页内容函数 fiel_get_content();输出file_put_content();

parse_url() 解析一个url 以数组的形式输出 host path query(参数)
pathinfo  解析path(路径) 以数组的形式输出 文件 文件名 后缀

相对路径计算


function getRelativ...]]></description><category></category></item><item><title><![CDATA[mysql]]></title><link>https://blog.youkuaiyun.com/qq_40222602/article/details/88550603</link><guid>https://blog.youkuaiyun.com/qq_40222602/article/details/88550603</guid><author>qq_40222602</author><pubDate>Thu, 14 Mar 2019 12:33:22 +0800</pubDate><description><![CDATA[CREATE TABLE `news`

(
 `id` int(11) NOT NULL AUTO_INCREMENT,
 `title` varchar(255) NOT NULL,
 `content` text NOT NULL,
 `uid` int(11) NOT NULL DEFAULT '0',
 `username` varchar(255) NOT NULL,
 ...]]></description><category></category></item><item><title><![CDATA[nginx]]></title><link>https://blog.youkuaiyun.com/qq_40222602/article/details/88539008</link><guid>https://blog.youkuaiyun.com/qq_40222602/article/details/88539008</guid><author>qq_40222602</author><pubDate>Wed, 13 Mar 2019 19:01:15 +0800</pubDate><description><![CDATA[开始命令：start nginx或者 nginx.exe

结束命令：taskkill /f /t /im nginx.exe

检查80端口是否被占用的命令是： netstat -ano | findstr 0.0.0.0:80 或netstat -ano | findstr &quot;80&quot;
...]]></description><category></category></item><item><title><![CDATA[redis]]></title><link>https://blog.youkuaiyun.com/qq_40222602/article/details/88531469</link><guid>https://blog.youkuaiyun.com/qq_40222602/article/details/88531469</guid><author>qq_40222602</author><pubDate>Wed, 13 Mar 2019 16:54:17 +0800</pubDate><description><![CDATA[事务使用multi exec组合命令


redis 127.0.0.1:7000&amp;gt; multi
OK
redis 127.0.0.1:7000&amp;gt; set a aaa
QUEUED
redis 127.0.0.1:7000&amp;gt; set b bbb
QUEUED
redis 127.0.0.1:7000&amp;gt; set c ccc
QUEUED
redis 127.0.0.1:7...]]></description><category></category></item><item><title><![CDATA[require namespace use用法]]></title><link>https://blog.youkuaiyun.com/qq_40222602/article/details/88105652</link><guid>https://blog.youkuaiyun.com/qq_40222602/article/details/88105652</guid><author>qq_40222602</author><pubDate>Mon, 04 Mar 2019 11:13:30 +0800</pubDate><description><![CDATA[php的命名空间是为了管理类，防止类名冲突。后面添加的路径为了方便查找。

第一个命名空间前不能有任何代码。

1.php


class Person{
    function __construct(){
        echo 'I am one!'.&quot;&amp;lt;br&amp;gt;&quot;;
    }
}

2.php


&amp;lt;?php
require_once '1.php';
new Per...]]></description><category></category></item><item><title><![CDATA[PHP]]></title><link>https://blog.youkuaiyun.com/qq_40222602/article/details/87368198</link><guid>https://blog.youkuaiyun.com/qq_40222602/article/details/87368198</guid><author>qq_40222602</author><pubDate>Fri, 15 Feb 2019 16:14:52 +0800</pubDate><description><![CDATA[php是弱类型语言，所以 1==‘1’ 而 1==='1' 则不成立

empty判断变量的值是1还是0  isset判断变量是否赋值，赋值了为1（0也是赋了值），没赋值（或者赋值为null，或者只声明了）为0，

is_null判断变量值是否为null，null为1，不是null为0 (变量赋值为null或只声明的情况下，变量值才为null，其它情况都不是null，0也不是null)
...]]></description><category></category></item><item><title><![CDATA[void*]]></title><link>https://blog.youkuaiyun.com/qq_40222602/article/details/84870498</link><guid>https://blog.youkuaiyun.com/qq_40222602/article/details/84870498</guid><author>qq_40222602</author><pubDate>Fri, 07 Dec 2018 10:25:05 +0800</pubDate><description><![CDATA[const char s1[] = &quot;hhh&quot;;
const char s2[] = &quot;hhh&quot;;
const char* s3 = &quot;hhh&quot;;
const char* s4 = &quot;hhh&quot;;

cout &amp;lt;&amp;lt; (void*)s1 &amp;lt;&amp;lt; &quot;  &quot; &amp;lt;&amp;lt; (void*)s2 &amp;lt;&amp;lt; endl;
cou]]></description><category></category></item><item><title><![CDATA[认识cpu、核、进程与线程]]></title><link>https://blog.youkuaiyun.com/qq_40222602/article/details/84031604</link><guid>https://blog.youkuaiyun.com/qq_40222602/article/details/84031604</guid><author>qq_40222602</author><pubDate>Tue, 13 Nov 2018 16:49:31 +0800</pubDate><description><![CDATA[cpu：自己的电脑一般一个cpu，服务器会有多个cpu。

核：有多个核（4、8、16）。

对比
			进程
			线程
		定义
			进程是程序运行的一个实体的运行过程，是系统进行资源分配和调配的一个独立单位
			线程是进程运行和执行的最小调度单位
		系统开销
			创建撤销切换开销大，资源要重新分配和收回
			仅保存少量寄存器的内容，开销小，在进程的地址空间执行代码
		拥有资源
	...]]></description><category></category></item><item><title><![CDATA[网络编程]]></title><link>https://blog.youkuaiyun.com/qq_40222602/article/details/83795452</link><guid>https://blog.youkuaiyun.com/qq_40222602/article/details/83795452</guid><author>qq_40222602</author><pubDate>Tue, 06 Nov 2018 22:19:46 +0800</pubDate><description><![CDATA[参考一：https://blog.youkuaiyun.com/daoming1112/article/details/54698466/  粘包问题

参考二：https://blog.youkuaiyun.com/chenchukun/article/details/78991215  tcp/udp创建步骤]]></description><category></category></item><item><title><![CDATA[Makefile]]></title><link>https://blog.youkuaiyun.com/qq_40222602/article/details/83795181</link><guid>https://blog.youkuaiyun.com/qq_40222602/article/details/83795181</guid><author>qq_40222602</author><pubDate>Tue, 06 Nov 2018 21:59:16 +0800</pubDate><description><![CDATA[转自：https://www.cnblogs.com/wang_yb/p/3990952.html

Makefile 使用总结

1. Makefile 简介

Makefile 是和 make 命令一起配合使用的.

很多大型项目的编译都是通过 Makefile 来组织的, 如果没有 Makefile, 那很多项目中各种库和代码之间的依赖关系不知会多复杂.

Makefile的组织流程的能力如...]]></description><category></category></item><item><title><![CDATA[linux常用命令]]></title><link>https://blog.youkuaiyun.com/qq_40222602/article/details/83795098</link><guid>https://blog.youkuaiyun.com/qq_40222602/article/details/83795098</guid><author>qq_40222602</author><pubDate>Tue, 06 Nov 2018 21:53:15 +0800</pubDate><description><![CDATA[Linux常用命令大全（非常全！！！）

最近都在和Linux打交道，感觉还不错。我觉得Linux相比windows比较麻烦的就是很多东西都要用命令来控制，当然，这也是很多人喜欢linux的原因，比较短小但却功能强大。我将我了解到的命令列举一下，仅供大家参考：

 

系统信息 
arch 显示机器的处理器架构(1) 
uname -m 显示机器的处理器架构(2) 
uname -r 显示正在使用...]]></description><category></category></item><item><title><![CDATA[linux编程]]></title><link>https://blog.youkuaiyun.com/qq_40222602/article/details/83508906</link><guid>https://blog.youkuaiyun.com/qq_40222602/article/details/83508906</guid><author>qq_40222602</author><pubDate>Mon, 29 Oct 2018 18:06:20 +0800</pubDate><description><![CDATA[多进程

Unix/Linux操作系统提供了一个fork()系统调用，它非常特殊。
普通的函数调用，调用一次，返回一次，但是fork()调用一次，返回两次，因为操作系统自动把当前进程（称为父进程）复制了一份（称为子进程），然后，分别在父进程和子进程内返回。
子进程永远返回0，而父进程返回子进程的ID。
这样做的理由是，一个父进程可以fork出很多子进程，所以，父进程要记下每个子进程的ID，而子进程...]]></description><category></category></item><item><title><![CDATA[智能指针的使用条件和缺陷]]></title><link>https://blog.youkuaiyun.com/qq_40222602/article/details/83417238</link><guid>https://blog.youkuaiyun.com/qq_40222602/article/details/83417238</guid><author>qq_40222602</author><pubDate>Fri, 26 Oct 2018 16:42:43 +0800</pubDate><description><![CDATA[一、auto_ptr

不支持复制（拷贝构造函数）和赋值（operator =），编译不会提示出错。

不要使用两个auto_ptr指针指向同一个指针；

不要使用auto_ptr指向一个指针数组，因为auto_ptr的析构函数所用的是delete而不是delete[]，不匹配；

不要将auto_ptr储存在容器中，因为赋值和拷贝构造后原指针无法使用。 
还有最重要的一点就是，什么情况下也别使用...]]></description><category></category></item><item><title><![CDATA[字符分割]]></title><link>https://blog.youkuaiyun.com/qq_40222602/article/details/83351820</link><guid>https://blog.youkuaiyun.com/qq_40222602/article/details/83351820</guid><author>qq_40222602</author><pubDate>Wed, 24 Oct 2018 22:08:57 +0800</pubDate><description><![CDATA[std::vector&amp;lt;std::string&amp;gt; split(const std::string &amp;amp;str, const std::string &amp;amp;pattern)
{
    std::vector&amp;lt;std::string&amp;gt; resVec;
    //方便截取最后一段数据
    std::string strs = str + pattern;
   ...]]></description><category></category></item><item><title><![CDATA[反转合并链表]]></title><link>https://blog.youkuaiyun.com/qq_40222602/article/details/83105769</link><guid>https://blog.youkuaiyun.com/qq_40222602/article/details/83105769</guid><author>qq_40222602</author><pubDate>Wed, 17 Oct 2018 10:25:04 +0800</pubDate><description><![CDATA[反转链表

node* reverseList(node* H)
{
    if (H == NULL || H-&amp;gt;next == NULL) //链表为空或者仅1个数直接返回
        return H;
    node* p = H, *newH = NULL;
    while (p != NULL)                 //一直迭代到链尾
    {
    ...]]></description><category></category></item><item><title><![CDATA[extern c的作用]]></title><link>https://blog.youkuaiyun.com/qq_40222602/article/details/83104911</link><guid>https://blog.youkuaiyun.com/qq_40222602/article/details/83104911</guid><author>qq_40222602</author><pubDate>Wed, 17 Oct 2018 09:38:52 +0800</pubDate><description><![CDATA[extern &quot;C&quot;的主要作用就是为了能够正确实现C++代码调用其他C语言代码。加上extern &quot;C&quot;后，会指示编译器这部分代码按C语言语法进行编译，而不是C++的。

extern 是变量或函数的申明，告诉编译器在其它文件中找这个变量或函数的定义。

这里需要的是“声明”，不是“定义”！根据C++标准的规定，一个变量声明必须同时满足两个条件，否则就是定义： 
(1)声明必须使用extern关键...]]></description><category></category></item><item><title><![CDATA[数据结构算法]]></title><link>https://blog.youkuaiyun.com/qq_40222602/article/details/82971978</link><guid>https://blog.youkuaiyun.com/qq_40222602/article/details/82971978</guid><author>qq_40222602</author><pubDate>Mon, 08 Oct 2018 18:43:54 +0800</pubDate><description><![CDATA[冒泡排序：比较相邻两个数的大小，每次找出最大的，然后循环次数减1

void bubble_sort(int arr[], int len)
{
    int i, j,temp;
    for (i = 0; i &amp;lt; len - 1; i++)
        for (j = 0; j &amp;lt; len - 1 - i; j++)
            if (arr[j] &amp;gt...]]></description><category></category></item><item><title><![CDATA[数据库查询]]></title><link>https://blog.youkuaiyun.com/qq_40222602/article/details/82795027</link><guid>https://blog.youkuaiyun.com/qq_40222602/article/details/82795027</guid><author>qq_40222602</author><pubDate>Thu, 20 Sep 2018 23:09:24 +0800</pubDate><description><![CDATA[数据库引擎：myisam快速读取，但不支持数据恢复、外键。innodb支持数据恢复和外键，但读取慢

多表联合查询

多表联合查询可以通过连接运算实现，而连接运算又可以通过广义笛卡尔积后在进行选择运算来实现。

Select 多表联合查询语句

Select 列名 [[,列名]...] from 表名1,表名2,,... Where 查询条件;

 

可以使用as为表或者字段（属性）取别名；

...]]></description><category></category></item><item><title><![CDATA[c++ string类的实现]]></title><link>https://blog.youkuaiyun.com/qq_40222602/article/details/82794803</link><guid>https://blog.youkuaiyun.com/qq_40222602/article/details/82794803</guid><author>qq_40222602</author><pubDate>Thu, 20 Sep 2018 22:47:36 +0800</pubDate><description><![CDATA[原文：http://noalgo.info/382.html

String是C++中的重要类型，程序员在C++面试中经常会遇到关于String的细节问题，甚至要求当场实现这个类。只是由于时间关系，可能只要求实现构造函数、析构函数、拷贝构造函数等关键部分。
String的实现涉及很多C++的基础知识、内存控制及异常处理等问题，仔细研究起来非常复杂，本文主要做一个简单的总结和归纳。

 

一 整体...]]></description><category></category></item><item><title><![CDATA[C/C++学习路线]]></title><link>https://blog.youkuaiyun.com/qq_40222602/article/details/82756410</link><guid>https://blog.youkuaiyun.com/qq_40222602/article/details/82756410</guid><author>qq_40222602</author><pubDate>Tue, 18 Sep 2018 13:36:06 +0800</pubDate><description><![CDATA[C/C++学习路线

随着互联网及互联网+深入蓬勃的发展，经过40余年的时间洗礼，C/C++俨然已成为一门贵族语言，出色的性能使之成为高级语言中的性能王者。而在今天，它又扮演着什么样重要的角色呢？请往下看：

后端服务器，移动互联网后端，经典Windows界面开发，移动互联网端界面开发，跨平台界面开发，图形分析，系统架构，应用设计，还有现在最为流行的分布架构等一些新的技术领域。

 这么牛的语言，...]]></description><category></category></item></channel></rss>