- 博客(27)
- 资源 (3)
- 收藏
- 关注

原创 git的深度理解
此篇文章是根据自己理解的程度写出来的,难免会有错误,还望见谅! git可以看成有三个空间,分别是working directory、stage area(Index,Cache)、history 工作目录下的文件放在working directory中1,文件提交与撤销 在这三个空间中的提交过程与撤销过程相关命令如下图所示git add 用于提
2016-06-13 20:50:54
701
原创 pascal_voc标注bbox的一些问题
使用labelimg进行标注pascal_voc格式的bounding box遇到的一些问题1,转成coco数据集格式的json标注格式#!/usr/bin/python# pip install lxmlimport sysimport osimport jsonimport xml.etree.ElementTree as ETSTART_BOUNDING_BOX...
2020-04-17 11:49:36
570
原创 tmux安装及基本使用
Linux centos6.51,首先下载安装包(libevent,tmux,ncurses-devel可直接yum安装)wget --no-check-certificate https://github.com/downloads/libevent/libevent/libevent-2.0.21stable.tar.gz wget http://downloads
2018-01-26 11:13:07
1817
转载 使用stringstream对象简化类型转换
C++标准库中的提供了比ANSI C的更高级的一些功能,即单纯性、类型安全和可扩展性。在本文中,我将展示怎样使用这些库来实现安全和自动的类型转换。为什么要学习如果你已习惯了风格的转换,也许你首先会问:为什么要花额外的精力来学习基于的类型转换呢?也许对下面一个简单的例子的回顾能够说服你。假设你想用sprintf()函数将一个变量从int类型转换到字符串类型。为了正确地完成这个任务,你必须确保
2016-06-02 14:24:00
335
原创 valgrind的使用、原理
valgrind支持的工具:memcheck addrcheck cachegrind Massid helgrind Callgrind运行时必须指明想用的工具,如果省略工具名,默认运行memcheck1,memcheck1),使用未初始化的内存2),读/写已经被释放的内存3),读/写内存越界4),读/写不恰当的内存栈空间5),内存泄露,指向一块内存的指针永远
2016-05-08 17:04:21
8806
1
原创 socket通信
./server [ip] [port]1.int port = atoi(argv[2]);2.int listen_sock = start(argv[1],port); //usefull sock int start(char *ip,short port);{ int sock_fd = socket(AF_INET,SOCK_STREAM,0);
2016-04-08 21:41:57
340
原创 进程与线程的区别
一、定义进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的基本单位线程是进程的一个实体,是CPU调度和分派的基本单位。它是比进程更小的能独立运行的基本单位,线程基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器、一组寄存器和栈),但是他可与同属一个进程的其他线程共享进程所拥有的全部资源。二、关系一个线程可以创建
2016-04-08 19:43:05
282
原创 希尔排序
下面的3个希尔排序算法中:ShellSort( int arr[ ] , int size )是常规的,思路比较清晰的希尔排序ShellSort_1( int arr[ ] , int size) 是从(j = gap;j ShellSort_2( int arr[ ] , int size) 与上一个函数思想一样,不过简化了插入排序void ShellSort(int
2016-04-04 21:18:24
268
原创 简单排序算法
#include#includeusing namespace std;void swap(int &a, int &b){ int temp = a; a = b; b = temp;}void BubbleSort(int arr[], int size){ assert(arr); int flags = 0; //end控制每次循环的边界 for (int
2016-04-04 19:43:29
262
原创 微型http服务器测试结果
主页显示结果(index.html)在浏览器中输入:主机地址+端口号执行MATH_CGI函数:(math.html、math_cgi)使用POST方法操作数据库(注册学生信息)(register.html、register_cgi)使用POST方法显示学生信息(s
2016-03-27 10:36:40
419
转载 strlen与sizeof的区别
Sizeof与Strlen的区别与联系(转)1.sizeof操作符的结果类型是size_t,它在头文件中typedef为unsigned int类型。 该类型保证能容纳实现所建立的最大对象的字节大小。 2.sizeof是算符,strlen是函数。 3.sizeof可以用类型做参数,strlen只能用char*做参数,且必须是以''\0''结尾的。 sizeof还可以用函数做参数
2015-08-08 14:57:40
276
原创 内部连接与外部连接
声明与定义(1)声明函数声明、typedef声明、友元声明、外部引用声明有两种声明不可以在同一作用域重复声明:类成员函数及静态数据成员的声明(2)定义在同一作用域不可重复定义一个实体内部连接:1)所有的声明2)enum定义3)inline函数定义4)类的定义5)const常量定义6)union定义外部连接1)类中非
2015-08-08 14:44:08
391
原创 C++各知识点
#include#includeusing namespace std;///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
2015-06-24 10:34:46
328
原创 循环队列函数实现
#pragma once#include#includeusing namespace std;#define MAXSIZE 20typedef int ElemType;typedef struct Queue{ ElemType *base; int front; int rear;}Queue;bool IsEmpty(Queue
2015-05-16 15:34:52
785
原创 栈基本操作及应用举例
#pragma once#include#includeusing namespace std;typedef int ElemType;#define STACK_INIT_SIZE 20typedef struct Stack{ ElemType *base; int top; int capacity;}Stack;bool IsF
2015-05-12 11:41:35
340
原创 栈 函数的实现
#ifndef _SEQSTACK_H#define _SEQSTACK_H#include#includeusing namespace std;typedef int ElemType;#define STACK_INIT_SIZE 5#define STACKINCREMENT 2typedef struct Stack{ ElemType *base;
2015-05-10 19:43:28
275
原创 双向循环链表 函数的实现
#include"list.h"void InitList(List *list){ Node *s=(Node *)malloc(sizeof(Node)); assert(s!=NULL); list->first=list->last=s; list->first->prev=list->last; list->last->next=list->first; lis
2015-05-10 19:38:56
387
原创 单循环链表中各种函数的实现
List.h#ifndef _LIST_H#define _LIST_H#include#includeusing namespace std;#define ElemType inttypedef struct Node{ ElemType data; struct Node *next;}Node, *PNode;typedef struct List{
2015-05-10 19:35:28
359
原创 字符反转输出
#includevoid fun(char *string){ if(*string!='\0') { fun(string+1);//递归调用 //fun(string++) 程序崩溃,因为每次指向的都是a的地址,无限循环下去 //fun(string+=1) 只输出dcb printf("%c",*string); }}int main(){ char st
2015-03-25 14:54:25
275
原创 rexerse_string的实现
#includevoid reverse_string(char*str){ int n=0; char *p=str; char temp;//不改变string的位置,用p指向string while((*p++)!='\0') { n++; } if(n>1) { temp=str[0]; str[0]=str[n-1]; str[n-
2015-03-25 14:07:41
386
原创 strrchr的实现
strrchr,用来查找一个字符串中某个字符出现的最后位置这个函数返回的是某个字符最后一次出现的地址#include#includechar *my_strrchr(char const*string,int ch){ char *str; char *temp; str=strchr(string,ch); while(str!=NULL)//当str为空时
2015-03-20 20:00:46
875
原创 通讯录的实现
#ifndef _CONTACTS_H_#define _CONTACTS_H_#define NAME_LENGTH 20#define SEX_LENGTH 10#define TELE_LENGTH 11#define ADDR_LENGTH 30#define MAX 1000struct PeopleInfo{ char name[NAME_LENGTH]; i
2015-03-20 16:42:24
249
原创 求n的k次方
#includeint my_pow(int n,int k){ int ret=0; if(k==1) { return n; } ret=n*my_pow(n,k-1); return ret;}int main(){ printf("%d\n",my_pow(4,4)); return 0;}
2015-03-14 17:11:04
768
原创 整形数的数字求和
#includeint DigitSum(int n){ int m; m=n%10; if(n!=0) n/=10; else return m; return m+DigitSum(n);}int main(){ printf("%d\n",DigitSum(2015)); return 0;}
2015-03-14 17:10:53
323
原创 2014-12-26
#includeint main(){ int i; for(i=1000;i<=2000;i++) { if((i%4==0&&i%100!=0)||(i%400==0)) printf("%d\t",i); else continue; } return 0;}输出1000-2000之间的闰年,用逻辑运算符作为一个判断语句
2014-12-26 10:06:28
365
原创 2014-12-23
[输出100到200之间的素数]#includeint main(){ int i,j,count=0; for(i=100;i<=200;i++) { for(j=2;j<i/2;j++) { if(i%j==0)break; } printf("%d\t",i); count++; if(count%5==0) { prin
2014-12-23 17:36:06
287
PATREC-Letters-Template-v1.0.1.zip
2020-11-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人