<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[adlics_r的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/adlics_r</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; adlics_r]]></copyright><item><title><![CDATA[面向对象编程（二）]]></title><link>https://blog.youkuaiyun.com/adlics_r/article/details/54954381</link><guid>https://blog.youkuaiyun.com/adlics_r/article/details/54954381</guid><author>adlics_r</author><pubDate>Thu, 09 Feb 2017 19:45:07 +0800</pubDate><description><![CDATA[构造函数与析构函数1．构造函数 
1）构造函数的特点： 
构造函数可以有任意类型和任意个数的参数，你个类可以有多个构造函数（重载） 
构造函数被声明为私有特殊的用途 
函数名和类名完全相同 
2）如果程序中未声明，则系统自动产生出一个默认构造函数，不带参数的构造函数 
3）全局对象的构造函数先于main函数 
4）当一个类存在构造函数时，手动加入参数 
注：手动写入无参构造函数 
2．析构函数 
1]]></description><category></category></item><item><title><![CDATA[面向对象编程（一）]]></title><link>https://blog.youkuaiyun.com/adlics_r/article/details/54932515</link><guid>https://blog.youkuaiyun.com/adlics_r/article/details/54932515</guid><author>adlics_r</author><pubDate>Wed, 08 Feb 2017 20:17:15 +0800</pubDate><description><![CDATA[面向对象编程介绍1．什么是面向对象 
   面向将系统看成通过交互作用来万恒特定功能的对象的集合。每个对象用自己的方法来管理数据。也就是说只有对象内部的代码能够操作对象内部的数据 
2．面向对象的优点 
   通过，继承、封装、多态降低程序的耦合度，并结合设计模式让程序更容易修改和扩展，并且易于复用。 
3．面向对象的特点
  ①　封装——维护性 
  ②　继承——复用性 
  ③　多态——扩展性]]></description><category></category></item><item><title><![CDATA[从c到c++的升级]]></title><link>https://blog.youkuaiyun.com/adlics_r/article/details/54917478</link><guid>https://blog.youkuaiyun.com/adlics_r/article/details/54917478</guid><author>adlics_r</author><pubDate>Tue, 07 Feb 2017 22:35:21 +0800</pubDate><description><![CDATA[1.声明定义 
C++可以在需要使用时再定义2.register关键字的升级 
·C++中可以取得register变量的地址3.const关键字 
·const修饰的变量不可变，也不可通过空间修改，即常量看待。当碰见常量声明时在符号表中放入常量4.内存分配与释放（new/delete）
  变量申请： 
  Type * pointer = new Type; 
  //——- 
  delete]]></description><category></category></item><item><title><![CDATA[C++概述]]></title><link>https://blog.youkuaiyun.com/adlics_r/article/details/54907321</link><guid>https://blog.youkuaiyun.com/adlics_r/article/details/54907321</guid><author>adlics_r</author><pubDate>Tue, 07 Feb 2017 10:49:29 +0800</pubDate><description><![CDATA[1.嵌入式开发为什么学习C++语言？ 
面向过程VS面向对象（C语言 VS C++语言） 
面向过程编程的特点（C语言）：
  1)C语言的特点： 
  ·没有深思熟虑的设计过程 
  ·残留过多低级语言的特征 
  2)面向过程的编程的特点 
  ·主要解决科学计算机问题，用户需求简单固定
面向对象编程的特点（C++语言）:
  ·由现实世界中的事物直接映射到程序中，可直接满足用户需求 
  直接]]></description><category></category></item><item><title><![CDATA[简答题——栈和队列的区别]]></title><link>https://blog.youkuaiyun.com/adlics_r/article/details/53899161</link><guid>https://blog.youkuaiyun.com/adlics_r/article/details/53899161</guid><author>adlics_r</author><pubDate>Tue, 27 Dec 2016 21:10:31 +0800</pubDate><description><![CDATA[栈和队列的区别？
  1.队列先进先出，栈先进后出。 
  2. 对插入和删除操作的”限定”。 栈是限定只能在表的一端进行插入和删除操作的线性表。队列是限定只能在表的一端进行插入和在另一端进行删除操作的线性表。         3.栈和队列是在程序设计中被广泛使用的两种线性数据结构，它们的特点在于基本操作的特殊性，栈必须按”后进先出”的规则进行操作，而队列必须按”先进先出” 的规则进行操作。]]></description><category></category></item><item><title><![CDATA[简答题——系统调用与库函数的区别]]></title><link>https://blog.youkuaiyun.com/adlics_r/article/details/53889006</link><guid>https://blog.youkuaiyun.com/adlics_r/article/details/53889006</guid><author>adlics_r</author><pubDate>Mon, 26 Dec 2016 20:31:40 +0800</pubDate><description><![CDATA[系统调用与库函数的区别？ 
(1)库函数是语言或应用程序的一部分，而系统调用是内核提供给应用程序的接口，属于系统的一部分 
(2)库函数在用户地址空间执行，系统调用是在内核地址空间执行，库函数运行时间属于用户时间，系统调用属于系统时间，库函数开销较小，系统调用开销较大 
(3)库函数是有缓冲的，系统调用是无缓冲的 
系统调用依赖于平台，库函数并不依赖]]></description><category></category></item><item><title><![CDATA[程序题——清零和设置bit位]]></title><link>https://blog.youkuaiyun.com/adlics_r/article/details/53873298</link><guid>https://blog.youkuaiyun.com/adlics_r/article/details/53873298</guid><author>adlics_r</author><pubDate>Sun, 25 Dec 2016 21:43:38 +0800</pubDate><description><![CDATA[给定一个整型变量a，写两段代码，第一个设置a的bit 3，第二个清除a 的bit 3。在以上两个操作中，要保持其它位不变。#define BIT3 (0×1<<3)static int a;void set_bit3(void){ a |= BIT3;} void clear_bit3(void){ a &= ~BIT3;}]]></description><category></category></item><item><title><![CDATA[简答题——heap和stack的区别]]></title><link>https://blog.youkuaiyun.com/adlics_r/article/details/53862456</link><guid>https://blog.youkuaiyun.com/adlics_r/article/details/53862456</guid><author>adlics_r</author><pubDate>Sat, 24 Dec 2016 20:59:28 +0800</pubDate><description><![CDATA[Heap和Stack的区别? 
1.heap是堆，stack是栈。 
2.stack的空间由操作系统自动分配和释放，heap的空间是手动申请和释放的，heap常用new关键字来分配。 
3.stack空间有限，heap的空间是很大的自由区。在Java中，若只是声明一个对象，则先在栈内存中为其分配地址空间，若再new一下，实例化它，则在堆内存中为其分配地址。]]></description><category></category></item><item><title><![CDATA[程序题——打印空心正方形]]></title><link>https://blog.youkuaiyun.com/adlics_r/article/details/53844396</link><guid>https://blog.youkuaiyun.com/adlics_r/article/details/53844396</guid><author>adlics_r</author><pubDate>Fri, 23 Dec 2016 22:08:47 +0800</pubDate><description><![CDATA[请以尽量高效的方法用”*”打印出一个空心正方形,num为边长#include <stdio.h>int main()
{
    int x,y,num;
    printf("please input the num:\n");
    scanf("%d",&num);    for(x = 0; x < num; x++)
    {
        for(y = 0 ; y < num;]]></description><category></category></item><item><title><![CDATA[简答——进程死锁]]></title><link>https://blog.youkuaiyun.com/adlics_r/article/details/53821021</link><guid>https://blog.youkuaiyun.com/adlics_r/article/details/53821021</guid><author>adlics_r</author><pubDate>Thu, 22 Dec 2016 21:52:10 +0800</pubDate><description><![CDATA[什么是进程死锁？造成进程死锁的原因？ 
如果多个进程同时占有对方需要的资源而同时请求对方的资源，并且在得到请求前不会释放所占有的资源，那么就会导致死锁的发生，也就是进程不能实现同步。 
产生死锁的原因可以归结为以下两点： 
（1）资源竞争；（2）进程间推进顺序非法]]></description><category></category></item><item><title><![CDATA[程序题——递归判断递增]]></title><link>https://blog.youkuaiyun.com/adlics_r/article/details/53792451</link><guid>https://blog.youkuaiyun.com/adlics_r/article/details/53792451</guid><author>adlics_r</author><pubDate>Wed, 21 Dec 2016 22:37:07 +0800</pubDate><description><![CDATA[用递归算法判断数组是否为一个递增数组 
bool fun( int a[], int n ) 
{ 
if( n == 1 || n == 0 ) 
return true; 
if( n ==2 ) 
return a[n-1] >= a[n-2]; 
return fun( a,n-1) && ( a[n-1] >= a[n-2] ); 
}]]></description><category></category></item><item><title><![CDATA[程序题——字符串逆序]]></title><link>https://blog.youkuaiyun.com/adlics_r/article/details/53767799</link><guid>https://blog.youkuaiyun.com/adlics_r/article/details/53767799</guid><author>adlics_r</author><pubDate>Tue, 20 Dec 2016 19:50:20 +0800</pubDate><description><![CDATA[void reverse(char *str,int len)
{
    int i;
    char *str1 = str;
    if(len <= 0 || *str1 == NULL)
    {
        return ;
    }
    char temp;
    for(i = 0; i < len; i++)
    {
        temp = *(str1]]></description><category></category></item><item><title><![CDATA[程序题——strstr的自我实现]]></title><link>https://blog.youkuaiyun.com/adlics_r/article/details/53748938</link><guid>https://blog.youkuaiyun.com/adlics_r/article/details/53748938</guid><author>adlics_r</author><pubDate>Mon, 19 Dec 2016 21:02:52 +0800</pubDate><description><![CDATA[包含文件：extern char *strstr(char *str1, const char *str2);语法： 
strstr(str1,str2)str1: 被查找目标　string expression to search. 
str2: 要查找对象　The string expression to find.返回值：若str2是str1的子串，则返回str2在str1的首次出现的地址；如]]></description><category></category></item><item><title><![CDATA[程序题——链表倒数结点]]></title><link>https://blog.youkuaiyun.com/adlics_r/article/details/53730659</link><guid>https://blog.youkuaiyun.com/adlics_r/article/details/53730659</guid><author>adlics_r</author><pubDate>Sun, 18 Dec 2016 22:14:05 +0800</pubDate><description><![CDATA[编写一个程序，实现输出链表中倒数第K个结点ListNode * FindKthToTail(LisNode *head, unsigned int k)
{
    if(head == NULL || K == 0)            //入口参数检查！！！
    {
        return NULL;
    }
    int i;
    ListNode *pAhead = h]]></description><category></category></item><item><title><![CDATA[程序题——字符串转化成为数字]]></title><link>https://blog.youkuaiyun.com/adlics_r/article/details/53716364</link><guid>https://blog.youkuaiyun.com/adlics_r/article/details/53716364</guid><author>adlics_r</author><pubDate>Sat, 17 Dec 2016 23:13:14 +0800</pubDate><description><![CDATA[C语言库函数里是否有将字符串转化为数字的函数，若有则用自己的方式实现它。int atoi(const char * str)
{
    if(str == NULL)                     //入口参数检查！！！
    {
        return -1;
    }    long long num = 0;                 //溢出问题有没有考虑]]></description><category></category></item><item><title><![CDATA[程序题——输出蛇形代码]]></title><link>https://blog.youkuaiyun.com/adlics_r/article/details/53699947</link><guid>https://blog.youkuaiyun.com/adlics_r/article/details/53699947</guid><author>adlics_r</author><pubDate>Fri, 16 Dec 2016 22:11:18 +0800</pubDate><description><![CDATA[编写一个程序，输出类似的蛇形代码： 
1  2  3  4  5 
16 17 18 19 6 
15 24 25 20 7 
14 23 22 21 8 
13 12 11 10 9#include <stdio.h>
#include <malloc.h>
int main()
{
int n;
int x,y,round;
//a[x][y]，x是二维数组的第一个下标，y是二维数组的第二个下标]]></description><category></category></item><item><title><![CDATA[赫夫曼编码]]></title><link>https://blog.youkuaiyun.com/adlics_r/article/details/53678371</link><guid>https://blog.youkuaiyun.com/adlics_r/article/details/53678371</guid><author>adlics_r</author><pubDate>Thu, 15 Dec 2016 22:59:48 +0800</pubDate><description><![CDATA[定理在变字长编码中，如果码字长度严格按照对应符号出现的概率大小逆序排列，则其平 均码字长度为最小。 
现在通过一个实例来说明上述定理的实现过程。设将信源符号按出现的概率大小顺序排列为 ： 
U： ( a1 a2 a3 a4 a5 a6 a7 ) [1]  
0.20 0.19 0.18 0.17 0.15 0.10 0.01 
给概率最小的两个符号a6与a7分别指定为“1”与“0”，然后将它们的概率]]></description><category></category></item><item><title><![CDATA[哈夫曼树]]></title><link>https://blog.youkuaiyun.com/adlics_r/article/details/53646586</link><guid>https://blog.youkuaiyun.com/adlics_r/article/details/53646586</guid><author>adlics_r</author><pubDate>Wed, 14 Dec 2016 21:12:54 +0800</pubDate><description><![CDATA[基本术语 
哈夫曼树（霍夫曼树）又称为最优树. 
1、路径和路径长度 
在一棵树中，从一个结点往下可以达到的孩子或孙子结点之间的通路，称为路径。通路中分支的数目称为路径长度。若规定根结点的层数为1，则从根结点到第L层结点的路径长度为L-1。 
2、结点的权及带权路径长度 
若将树中结点赋给一个有着某种含义的数值，则这个数值称为该结点的权。结点的带权路径长度为：从根结点到该结点之间的路径长度与该结点的]]></description><category></category></item><item><title><![CDATA[线索二叉树]]></title><link>https://blog.youkuaiyun.com/adlics_r/article/details/53618372</link><guid>https://blog.youkuaiyun.com/adlics_r/article/details/53618372</guid><author>adlics_r</author><pubDate>Tue, 13 Dec 2016 23:35:03 +0800</pubDate><description><![CDATA[概念这种加上了线索的二叉链表称为线索链表，相应的二叉树称为线索二叉树(Threaded BinaryTree)。根据线索性质的不同，线索二叉树可分为前序线索二叉树、中序线索二叉树和后序线索二叉树三种 
注意： 
线索链表解决了无法直接找到该结点在某种遍历序列中的前趋和后继结点的问题，出现了二叉链表找左、右孩子困难的问题。线索二叉树结构二叉树的遍历本质上是将一个复杂的非线性结构转换为线性结构，使每个结]]></description><category></category></item><item><title><![CDATA[（综合）进程间通信方式]]></title><link>https://blog.youkuaiyun.com/adlics_r/article/details/53587716</link><guid>https://blog.youkuaiyun.com/adlics_r/article/details/53587716</guid><author>adlics_r</author><pubDate>Mon, 12 Dec 2016 20:45:00 +0800</pubDate><description><![CDATA[1)管道 
管道分为有名管道和无名管道 
无名管道是一种半双工的通信方式,数据只能单向流动,而且只能在具有亲缘关系的进程间使用.进程的亲缘关系一般指的是父子关系。无明管道一般用于两个不同进程之间的通信。当一个进程创建了一个管道,并调用fork创建自己的一个子进程后,父进程关闭读管道端,子进程关闭写管道端,这样提供了两个进程之间数据流动的一种方式。 
有名管道也是一种半双工的通信方式,但是它允许无亲缘]]></description><category></category></item></channel></rss>