- 博客(34)
- 资源 (1)
- 收藏
- 关注
原创 排序算法
-选择排序基本思想:每一趟(例如第i趟,i=0,1。。。n-2)在后面n-i个待排序的数组元素中选出关键字最小的元素,作为有序元素序列的第i个元素。描述,遍历整个数组,从整个无序数组中找到最小的元素,找到一个最小的元素,放到有序数列中,然后在从无序数组中找到最小的一个元素,循环下去,遍历完整个数组。程序实现:#include <stdio.h>void println(int a...
2018-04-08 17:17:03
168
原创 007Pythom学习
组合关系class Turtle: def __init__(self,x): self.num = xclass Fish: def __init__(self,y): self.num = yclass Pool: def __init__(self,x,y): self.turtle = Turtle(x) ...
2018-04-08 15:51:34
731
原创 Linux下makefile
makefile:由规则和变量构成make的工作主要依赖一个名为Makefile文件,Makefile文件描述了整个程序的编译,链接等规则。Makefile中最重要的组成部分是“规则”规则:用于说明如何生成目标文件,规则的格式如下:targets:prerequisite command目标 依赖 命令特别提示:命令需要使用【tab】键空格例子:led.elf:led.o ar...
2018-04-04 17:34:36
173
原创 GCC编译程序
GCC是(CNU C Compiler)是GNU推出的功能强大,性能优越的多平台编译器,是GNU的代表作之一,GCC可以在多种硬件平台上编译出可执行程序,其执行效率是一般的编译器的相比平均效率高出20%-30%GCC编译流程gcc编译器能将c/c++语言源程序,汇编程序形成可执行文件,整个形成过程可以分成四个阶段hello.c 预处理-->hello.i 编译--> hell...
2018-04-04 11:10:33
1217
原创 Linux调试coredump
如果一个程序连续运行多天后出现错,这个时候就不能使用GDB去调试,使用coredump又叫核心转存,当程序在运行中发生异常,这时Linux系统可以吧程序出错的内存内容存储在core文件中coredump主要应对什么样的错误呢?segment fault(段错误)产生这样的原因:数组访问越界访问空指针栈溢出修改只读内存使用coredump,linux系统中默认是关闭core dump的通过ulim...
2018-04-04 10:07:55
196
原创 Linux下的GDB调试
GDB是GUN发布的一款 功能十分强大的程序调试工具,GDB主要完成下面三个方面的功能:1.启动被调试程序2.让被调试程序在指定的位置停住3.当程序被停止时,可以检查程序状态GDB使用流程1.编译生成可执行文件gcc -g **.c -o ***或者gcc -g -o *** **.c2.启动GDBgdb ***3.在main函数处设断点break main4.运行程序...
2018-04-04 09:35:28
371
原创 Python
注册os 图形化安装easygui类的定义对象的实例化,类名大写开头,函数名小写开头构造函数公有和私有,在前面加上双下划线,表示变量或者方法是私有的若要访问私有变量,可以如下对象._类名__变量python是伪私有继承-调用未绑定的父类的方法-用于子类重写了父类的构造,而新的构造中没有写入父类的属性, 在子类的__init__中:父类.__init__(self)更推荐的方法是:super()....
2018-04-03 17:32:46
151
原创 006Python学习
lambda表达式冒号前面是参数,冒号后面是返回值,生成的是一个函数的类型,使用时,给函数一个名字,然后给加入参数python写一些执行脚本时,使用lambd可以省下定义函数的过程,比如我们只是写个简单的脚本来管理服务器时间,我们就不需要专门定义一个函数然后再写调用。比较牛逼的biffilter:过滤器将o和false过滤编写一个过滤奇数的过滤器两种实现方法map字典使用{'':'',.....}...
2018-04-03 15:50:46
110
原创 005Python学习
函数使用def定义函数,函数名加(),完成调用函数的参数函数的返回值return函数文档关键字参数默认参数可变参数,在参数前面加上*函数和过程函数是有返回值,过程是简单的特殊的没有返回值的,严格来说 python只有函数,没有过程,返回的函数都会返回一个对象,包括none打印一个局部变量会变错在函数中修改局部变量,在函数中会新建一个同名的局部变量,不要试图去修改全局变量。内嵌函数和闭包闭包:产生的...
2018-04-03 14:50:07
139
原创 Linux交叉开发文件互享-TFTP与NFS
通过一些方式,将宿主机产生的软件,下载到目标机上,这种模型就是交叉开发,基于网络的下载模式有TFTP和NFS 1.TFTP首选挂载光盘,mount /dev/cdrom /mnt/安装时出错,没有依赖xinetd配置TFTP服务器/etc/xinted.d/tftp修改后为下图,一个修改为访问目录,第二课设置为使能测试TFTP服务启动windows下的tftp软件、2.NFS服务器...
2018-04-03 11:45:45
235
原创 windows和linux文件共享
-前提是能够ping通-关闭防火墙方式一1.winSCP文件互享,可以直接拖放方式二 Samba服务器第四步,修改smb副武器的配置用vim打开后,光标移动到home所在位置,然后6yy,复制这6行,然后粘贴在home上复制后的home改为root,修改成如下。path是smb服务器可以访问的路径,我们设置为整个目录都可访问第五步,重启smb服务器 /etc/init.d/smb restart...
2018-04-03 11:13:04
179
原创 远程登陆Linux系统
一登陆前提1.从windows系统中能够ping通linux2.关闭Linux防火墙运行命令:/etc/init.d/iptables stop二 .putty-ssh弹出如下对话框,要求输入登陆名和密码,输入后便可正常使用。2.图形化登陆方式使用VNC1.从RHEL6安装光盘中packeges目录中,双击安装vnc服务器2.启动vnc服务:vncserver &第一次设置时,需要输...
2018-04-03 10:31:43
273
原创 Linux网络配置
VMWare提供了三种网络工作模式供用户选择,他们分别是:1.bridged(桥接模式)2.NAT(网络地址转换模式)3.host-only(主机模式)-桥接模式:如果网络中能提供多个IP地址,则使用桥接方式-主机模式:如果安装的虚拟机主机没有连接任何外部网络,则使用主机模式-网络地址转换模式:如果网络中只能提供一个IP地址,则使用NAT方式。注意事项:1.选择网络模式前,停止虚拟机中系统的运行2...
2018-04-03 09:59:45
116
原创 005Python学习
元组:带上枷锁的列表元组只能添加同类型的元素,创建一个元组:tmp=(1,2,3,4) 或者tmp=1,2,3,创建只有一个元素的元组tmp=(1,)元组后面加一个逗号访问元组和访问列表方式类似,但是元组的元素是不可以修改的,python是有垃圾回收机制的2.开头大写3.变为小写,注意:上面两个用法都是返回一个新的字符,并没有改变...
2018-04-02 14:41:38
117
原创 004Python学习
1.列表,可以把整数,浮点数,字符串,对象,都可以扔进去创建一个普通列表向列表添加元素append()extend(),向列表中放入列表形式的元素insert(1,‘**’)在1的位置添加**和数组一样可以通过下标来访问列表中的元素2.从列表删除元素remove()必须知道参数的具体名字,不需要知道具体位置del()如果后面加上下标,则删除对应项,如果跟着列表名,则整个都删除pop()弹出最后一个...
2018-04-02 12:26:51
198
原创 vim使用
文本编辑器-vim命令行模式:刚进入vim时的模式,该模式下可以移动光标进行浏览,可以进行整行的删除等操作,但无法编辑文字,命令行模式下的功能键有:yy:复制当前光标所在行[n]yy:n为数字,复制当前光标开始的n行p:粘贴复制的内容到光标所在行dd:删除当前光标所在行[n]dd:删除光标所在开始的n行/name:找到光标之后名为“name”的字符串G:移动光标到文件尾(注意是大写)gg:移动光标...
2018-03-29 17:29:49
144
原创 Linux命令详解
第一组:用户管理命令1.添加用户格式:useradd [选项] 用户名范例:useradd dcd-添加名字为dcd的用户,当用户创建成功后,会在/home/目录下生成同名的目录。2.删除用户格式:userdel [选项] 用户名userdel -r dcd-删除名字为dcd的用户,“-r”选项会使/home/目录下的用户目录也被删除3.修改密码格式passwd [选项] 用户名范例pass...
2018-03-29 15:55:13
454
原创 003python-学习
1.获得关于变量的类型type()>>>a = '520'>>>type(a)<class 'str'>查阅帮助文档后,官方更推荐我们使用 isinstance(a,typename)例如:>>>a = "dcd">>>isinstance(a,str)True2.常用的操作符除法是真正的除法,
2018-03-27 17:32:29
121
原创 002学习python-变量
1.python并不想其他编程语言一样,把值存储到变量中,更像是把名字贴在值上面。python没有变量,只有名字。2.使用变量前需要对其赋值3.如果需要打印的字符串中出现单引号或者双引号let's go,有两种方式,第一种使用转义字符(\),对字符串的引用采用转义let\'s go,另一种方式就是采用字符串粘贴。4.如果是打开文件,需要添加路径,需要添加\,这时候如果直接用print打印会把\n当...
2018-03-27 16:05:25
200
原创 001学习python
1.下载安装python地址在https://www.python.org/download,选择合适的版本,2.安装python,全部next。3.打开IDLE,测试print输出如下:Python 3.3.2 (v3.3.2:d047928ae3f6, May 16 2013, 00:06:53) [MSC v.1600 64 bit (AMD64)] on win32Type "copyr...
2018-03-27 13:16:58
212
原创 VS远程调试
1.vs安装路径下提供了一个非常好用的远程调试工具msvsmon.exe,这个工具分为32位和64位,调试时根据自己的系统类型选择。2.首先将本机vs生成的exe文件拷贝导到需要远程的电脑上,具体方法是开始中输入mstsc,打开远程,输入目标机的地址,能够远程目标机。将远程工具和msvsmon.exe和执行程序都拷贝到桌面或其他地方,打开msvsmon.exe,->设置->选项。配置如...
2018-03-23 17:38:45
900
原创 C++ 模板
1.模板简介#include <iostream>#include <string>using namespace std;/*int max(int a, int b){ return a > b ? a : b;}float max(float a, float b){ return a > b ? a : b;}*/templ...
2018-03-23 16:47:17
116
原创 C++ 抽象类虚函数和多态
1.纯虚函数纯虚函数只声明,而没有具体的实现,这样的函数称为纯虚函数,纯虚函数的语法如下virtual 返回值类型,函数名称(参数列表)=0;2.抽象类含义纯虚函数的类称为抽象类,抽象类至少含有一个纯虚函数。3.抽象类不能被实例化,只能被作为父类继承需使用,可以创建指针的形式,指向子类的类型4.虚函数实现多态的基础,多态是指一个函数有多重状态,根据父类的引用或者指针指向的子类不同,而动态调用。5....
2018-03-23 14:58:00
352
原创 C++ 继承概述
1.继承关系,可以使用继承达到代码复用的目的,被继承类称为父类或者基类,继承类称为子类或者派生类,子类可以继承父类的成员变量和成员方法。继承的语法格式如下:class 子类名称:【继承方式】 父类名称{【访问修饰符】【成员列表】}#include <iostream>#include <string>using namespace std;//方法重载,同一个类中...
2018-03-23 14:30:21
126
原创 C++ 析构函数
1.当我们使用构造函数声明了内存空间,或者打卡了一个文件,在我们不用的时候必须释放内存并关闭文件。2.这些操作可以写再析构函数中。3.析构函数是一个特殊的函数,函数名和类名相同,并且前面有一个~符号。4.当对象不在使用时候,或者delete时,编译器会自动调用析构函数。创建的指针需要释放,并指向NULL5.实例:#include <iostream>#include <stri...
2018-03-23 11:56:07
151
原创 C++ 赋值操作
1.重载操作符1)重载操作符是一些函数,其名字为operator后面跟上需要重载的操作符名称,例如operator=,2)和普通函数一样,操作符重载函数有一个返回值和一个形参列表,形参数量和操作符的操作数相同,例如=号有两个操作数3)如果操作符是一个成员,则默认的第一个参数时this。2.赋值操作符1)赋值操作符,有两个形参。第一个操作数是左操作数,第二个形参是右操作数2)赋值操作符的返回值和参数...
2018-03-23 11:20:42
3322
原创 C++ 复制构造函数
1.复制构造函数的概念。1)复制构造函数是一种特殊的构造函数,它有一个单独的对该类型引用的形参。2)当定义一个新对象,并用一个同类型的对象初始化时,将调用复制构造函数3)当该类型的对象传递给函数或从函数返回,将隐式使用复制构造函数。2.复制构造函数使用的时机1)根据另一个同类型的对象显式或隐式初始化另外一个对象2)复制一个对象,将他作为一个实参给一个函数。3)从一个函数返回复制一个对象4)初始化顺...
2018-03-23 10:39:18
211
原创 c/c++下使用gSoap工具实现WebServer客户端和服务端
由于项目需要,要实现webserver客户端和已经提供的上位机软件通信,这个软件是别人已经写好的,其本身可以看做是webserver的服务端,服务端开发者提供了一个.wsdl文件,这是一个服务器描述语言,里面给了我们客户端需要的接口。在C/C++中,实现webserver的工具就是gSoap。所需工具和源程序在链接中。gSoap2.8工具:点击打开链接客户端和服务端源码:点击打开链接 ...
2018-03-23 09:44:45
1178
原创 C++ 构造函数
构造函数1.构造函数是一个特殊的函数,和类同名,没有返回值,作用是初始化。2.创建一个对象时,都要调用构造函数。3.构造函数可以重载4.构造函数可以用使用初始化列表,来初始化成员变量。5.构造函数的特点:1)默认构造函数没有参数2)默认构造函数由系统提供3)如果我们显式的定义了,非默认构造函数,则系统不再提供默认构造函数6.实例class MyDate{private: int year;...
2018-03-22 17:15:41
223
原创 C++ set
set1.map是key-value的键值对,而set只有key,和vector的却别是set中的对象不能重复。2.set操作 vector<int> v; v.push_back(1); v.push_back(1); v.push_back(2); v.push_back(2); v.push_back(3); v.push_back(3); cout <&...
2018-03-22 15:36:55
102
原创 C++ 关联容器
1.关联容器1前面我们学习了顺序容器,顺序容器是通过位置(索引)来访问的。2.而关联容器是通过键(key)来访问的,每个值都关联一个key,通过key来访问。3.关联容器包括map,multimap和multilist。4.map是(key,value)的键值对,通过key获得value,并且是唯一的。5.如果key需要重复可以使用multimap和multilist。6.pair类型pair类型...
2018-03-22 15:18:08
103
原创 C++ 顺序容器的操作
1.顺序容器(vector set list)的操作包括:1)添加元素2)删除元素3)设置容器大小4)获取容器元素2.容器类型别名size_tpye,无符号整型,容器长度iterator,容器迭代器const_iterator,只读容器迭代器reverse_iterator,逆序迭代器const_reverse_iterator只读逆序迭代器difference_tpye,两个迭代器差值,有符号整...
2018-03-22 14:15:29
457
原创 C++ vector
1.向量类模板vector1.1向量是一种随机访问的数组类型,提供了对元素的快速,随机访问,以及在序列尾部快速、随机插入和删除操作,它是大小可变的向量。2.创建向量vector的方法std::vector<type> name; 例如std::vector<int> initvector;std::vector<int> v1(10) ; //v1有10元...
2018-03-22 10:39:42
179
原创 mini2440学习——uboot新手入门
在下载Uboot前,需要准备好以下工作:1.usb下载线和串口线,用于串口输出信息和程序下载,2.编译好的mini2440uboot.bin。在编译.bin文件前需要对工程进行一次make distclean。否则可能会出错,生成bin文件后,将硬件连线接好,在虚拟机中连接usb下载线。首先安装dnw,在bin文件下,使用dnw将程序烧录到开发板中。在这之前还有一个特别重要的步骤,
2017-11-20 15:10:19
1101
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人