- 博客(21)
- 资源 (1)
- 收藏
- 关注
原创 一个简单的linux ping程序详解
作为从事网络工作的人来说,了解ping的一些知识是非常有必要的,因此,趁着最近的功夫,借着网络上的一些前辈的博客,自己也动手写了一个简单的ping命令实现,主要参考的博主文章链接如下:https://www.cnblogs.com/skyfsm/p/6348040.html?utm_source=itdadao&utm_medium=referral 由于...
2018-07-27 16:04:56
7419
原创 C++学习之模板
C++学习之模板 有关C++模板的概念,详细学过C++的人都应该有所耳闻,其是泛型编程的基础。顾名思义,模板就是相当于一个模子,通过这个模子我们可以做出各种各样的东西,C++模板就是这样的一种工具。之所以要在C++中引入模板,就是为了减少C++程序中代码的重复工作,达到代码的可重用的功能。举一个我们常用的例子,比较两个整型a,b的大小,我们定义一个函数,但是如果比较的是两个浮点型的
2015-09-02 21:45:47
509
原创 C++之虚函数
C++之虚函数详解1、纯虚函数 虚函数的存在主要是为了方便C++中的多态特性,所谓的多态,简单的用一句话讲就是父类对象指向子类应用。在这篇博客中,我将介绍一下有关C++虚函数的知识,主要参考了下面这一篇博客文章,http://haoel.blog.51cto.com/313033/124595/。虚函数我们主要有普通虚函数和纯虚函数,纯虚函数是没有实现体的,因此我们必须在
2015-08-28 10:02:23
442
原创 数据结构 学习之图
数据结构之图 图作为一种更加复杂的数据结构,其实在我们的生活中用的也是最广泛的,在本篇博客中,我依然秉承上一篇将二叉树的习惯,采取边学边写的方法来介绍一下图。由于图比较复杂,因此在本篇博客中我重点就是介绍一些图的基本概念,对于编程代码部分,由于目前对其研究有限,因此只能尽可能的介绍一下自己理解的编码。1.图的一些性质概念图的表示:图是由点和边组成的集合,我们一般采用G(V
2015-08-15 20:47:57
457
原创 数据结构之二叉树详解
数据结构之二叉树 其实笔者对于二叉树也是刚开始学习,根本就不能完全了解其所有的知识信息,因此写这篇博客也是属于赶鸭子上架,不过既然如此,那就变学习边写吧。至于有关树或者二叉树的一些基本概念知识在此就不一一解释了,主要就是通过程序来反应我们对二叉树的常用操作了。前面我们学习了链表,其是一种线性结构,因此我们在创建或者遍历时能够轻易的抓住规律,但是对于二叉树,它是一种非线性的
2015-08-13 09:07:24
670
原创 C/C++学习之构造函数
C++学习之构造函数对于C++中的构造函数,有人可能觉得没啥好说的,我之前也是这么觉得,可是后来经过深入学习,发现C++中构造函数并非像想得那么浅显,下面我主要从构造函数初始化成员变量和拷贝构造函数,赋值符重载函数几方面来说明下。构造函数主要用来初始化类的成员变量,一个类可以有多个构造函数,也就是我们C++中重载,根据参数的不同来区分构造函数,如果一个类没有显示声明构造
2015-08-05 22:21:35
543
原创 C/C++学习
C++学习(一)学过C++的人都知道,C++是一种纷繁复杂的语言,所涉及的知识点非常零碎且多,但是又是各大招聘公司非常看重的语言,因此在此笔者就趁着兴致,尽量详细的向大家总结一些C++中一些相关的知识。1.内联函数(inline)内联函数其实就是一个真正的函数,其具备了普通函数的一切形式要素,只是与普通函数在调用时有些区别。当我们在程序中调用一个普通函数时,必须
2015-08-04 17:51:13
370
原创 Linux学习之多线程编程
Linux应用程序之多线程程序设计1、线程介绍前面我们介绍了Linux下进程的概念,下面我们就来说一说linux下多线程程序设计。之所以在有了进程之后还要创建线程的概念,是因为使用线程有许多好处,首先相比于进程来讲,一方面线程更加的节约空间,因为在Linux系统下,启动一个新的进程必须为其分配独立的地址空间,而运行于一个进程中的多个线程,他们彼此之间是共享这个进程的地址空间,共享大
2015-07-04 09:12:53
548
原创 Linux进程通信之消息队列
Linux进程通信之消息队列 消息队列就是一个消息的链表,我们可以把消息看作一个记录,具有特定的格式。消息队列也是进程中通信常见的方式之一,进程可以向消息队列中按照一定的规则添加新消息;另一些进程则可以从消息队列中读走消息。下面我们就来看看常见的消息队列函数:(1) 创建或打开一个消息队列int msgget(key_t key , intflag);消息队列的通
2015-06-29 15:23:03
520
原创 Linux进程通信之共享内存
Linux进程通信之共享内存共享内存顾名思义就是几个进程共享一块内存区域,由于共享内存不需要数据在几个进程间来回复制,因此,共享内存是进程间通信方式中最快最为高效的。所谓的共享内存就是内存分配一段物理内存,然后不同的进程可以将这一段内存地址连接到它们自己的地址空间中,然后进行访问,我们也可称这个过程为映射。搞清楚了共享内存的基本概念,下面我们就来看看相关的函数:(1)创建共享内存
2015-06-26 16:59:47
717
原创 Linux进程通信之同步进程
Linux进程通信之同步进程 上一篇我讲了Linux进程通信之信号量的相关知识,本节我将学习Linux的进程同步,因为在Linux中进程的同步我采用了信号量的方法来完成,因此有关信号量的知识大家可以看我上一篇博客介绍,在此就不再赘述了。 所谓的进程同步就是指一组并发进程进行互相合作、互相等待,使得各进程按一定的顺序执行的过程。在我们进程同步的问题中,有一个非常经
2015-06-25 16:55:16
357
原创 Linux进程通信之信号量
Linux应用程序学习进程通信之互斥信号量 这一节我学习了Linux进程通信中的互斥信号量的方式,相比于前面的学习来讲,信号量涉及的知识更多,也更复杂,因此在这一节我将尽量详细介绍信号量的知识。在多进程操作编写程序时,我们总会发现有段临界代码,如果此时没有限制,任何进程都能访问这段区域,则会造成一种混乱,比方说有A和B两个进程,他们都想向一个文件写入内容,如果A写到一半睡眠了
2015-06-24 17:11:07
395
原创 Linux进程通信之信号
Linux应用程序学习之进程通信之信号 前面我们学习了Linux进程间管道的通信方式,主要是把管道看做文件来进行相应操作,这一章就来了解一些进程间的信号通信方式。在Linux系统中,信号是一种最为古老的进程间通信机制,在进行进程间通信编程之前,我们首选需要了解一下任意两个进程间是如何进行信号交流的.由上图可以很清晰的看到两个进程之间信号的交互,无非是一个进程等待
2015-06-17 12:11:17
595
原创 Linux应用程序学习之进程通信之管道
Linux进程通信之管道Linux中进程通信方式,即IPC通信方式主要有以下七种:(1)无名管道(pipe)(2)有名管道(FIFO)(3)信号(4)消息队列(5)共享内存(6)信号量(7)套接字(Socket)在后面的学习中,我将重点学习这些知识,这一节我学习了无名管道和有名管道,在此将学习总结写下来。 在进行linux管道通信编程之前,我
2015-06-15 22:12:46
480
原创 Android学习之常用控件(1)
Android控件学习之RadioGroup,RadioButton,CheckBox学习安卓编程,首先要学习其基本的相关控件,下面我就把我学习的点滴知识在此形成博客,以作为一种学习笔记来记录自己安卓的学习过程,我学习的参考视频为max老师的视频教程,大家有兴趣可以看看他的视频。通过我在IT方面的学习经验,我发现纯粹的看书式的理论学习总是让人力不从心,所以在我的学习中,我希望能以程序来引导
2015-06-12 12:29:11
458
原创 Linux应用程序学习之进程函数
Linux应用程序学习之进程学习 Linux中进程的概念非常重要,其涉及到的知识也非常有用,希望能在此做一个抛砖引玉的作用,来让我们深入学习下linux。进程是一个具有一定独立功能的程序的一次运行活动,其主要特点包括动态性、并发性、独立性和异步性。我们常见的进程包括三种状态,分别是就绪态,运行态,以及阻塞态,进程在三个状态之间相互转化。在linux系统中,我们用进程ID来标识
2015-06-12 10:36:42
648
原创 Linux应用程序学习之时间函数
Linux应用程序学习之时间函数 这一课我学习了Linux中与时间相关的函数编程,下面我就来介绍这些函数。Linux中与时间相关的函数有不少,而且还有分类,有显示为日历时间,有显示为标准时间,有显示为本地时间的,下面我们就来介绍一些相关函数,当然在前面我说过在Linux终端中采用man命令可以很清楚的查看到相关函数的信息,所以在此我只列出函数的原型以及一些必要的解释,详细的描述大
2015-06-11 09:56:03
432
原创 Linux学习之库函数方式文件编程
Linux应用程序学习之库函数方式文件编程 上一篇我学习的是linux系统调用函数的文件编程,这一篇我们就来说说linux库函数方式文件编程,那系统调用和库函数方式有什么区别吗?前面我们也讲过,系统调用函数是由liunx内核提供的,存在于内核中,而我们的库函数是由外部链接库来提供的,它是基于C函数库独立于操作系统平台的,无论在linux或者windows下,我们都可以使用这些函数
2015-06-09 09:51:51
665
原创 Linux应用程序学习之文件编程
Linux应用程序学习之文件系统调用函数编程 上一篇我们了解了Linux系统下函数库的设计方法,这一章我们就来学习一下linux系统下常用的文件操作函数,在进行系统文件操作函数介绍前,我们首先要明白一个术语:文件描述符。何为文件描述符?在linux系统中,所有打开的文件都有一个数字对应,由系统来分配这个数字,这个数字就称为文件描述符。具体使用方法我们后面编程来介绍,下面我们就来
2015-06-05 11:16:20
419
原创 Linux应用程序学习之制作静态函数库
Linux应用程序学习之静态函数库设计 Linux应用程序中需要的外部函数主要是由函数库和系统调用来提供,函数库和系统调用的区别在于函数库位于用户态,而系统调用是由linux内核来实现,也就是实现代码位于内核中,例如我们常用的打开文件函数open,本节主要就是介绍位于用户态的函数库。 函数库按照连接方式分为静态链接库和动态链接库,我们linux系统的应用程序使用
2015-06-03 12:21:50
535
原创 Linux学习之Linux应用程序地址布局
Linux学习之Linux应用程序地址布局刚开始学习Linux没多久,基本算是超级新手,因此想通过写博客来得到先贤的指教,同时也起到督促自己学习的习惯。笔者是从国嵌买的视频资料开始学习的,目前正学到Linux应用程序地址布局这一期,因此下面我就说说笔者的学习到的知识点吧。说到Linux应用程序地址布局,主要就是涉及到下面几个存放区了(1) 代码段(2) 数据段(
2015-05-27 09:09:28
400
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人