自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(50)
  • 资源 (1)
  • 收藏
  • 关注

原创 jenkins学习记录

jenkins配置问题

2022-07-11 16:19:06 199 1

原创 Unix网络编程第一卷学习总结

简述和TCP/IP如果要写一个简单的ipv6客户端程序,需要sockaddr_in6地址,其余用法和ipv4的用法一致,先指定地址族,端口,ip地址,connect成功后,就可以发包收包

2022-04-18 20:49:14 1459

原创 Linux多线程编程手册总结

基本线程编程pthread_join当多个线程同时等待时,会有随机一个线程返回成功0,其他线程将失败并返回ESRCH错误并且pthread_join仅适用于非线程分离时线程有单独的线程数据,可以使用pthread_key_create创建,pthread_setspecific设置数据绑定,pthread_getspecial获取数据使用一个全局变量,每个线程可以set/get,并且key的个数可以通过PTHREAD_KEY_MAX(定义于limits.h文件中)或者系统调用sysconf(_SC

2021-12-31 22:01:18 1025

原创 C++宏的简单用法

经常遇到对宏的封装是 !!(expr), expr就是函数指针,但是为什么要这么写呢,因为我们只想获取,true或false, 当expr 是一个返回值 等于 100的值,经过转换,获取的结果为1 true,达到了想要的目的通常配合 __builtin_expect(!!(expr), 1)使用,代表默认表达式执行通过的可能性更大,编译器会做相关优化同样,有时我们也经常会用到#define RV (x + x) 的用法,为什么要这样呢,举个例子如果不加括号, 使用RV表达式展开的时候,会出现如

2020-12-12 10:56:45 253

原创 android-studio adb不能正常启动的检测

首先,我新建一个工程,发现不能正常启动adb,总是闪退,所以去cmd查了一下占用5037的端口C:\Users\quint>netstat -aon|findstr “5037”TCP 127.0.0.1:5037 0.0.0.0:0 LISTENING 4404发现是4404这个pid占用,所以看一下这个进程名字C:\Us...

2019-11-09 23:08:27 285

原创 python 使用pyinstaller进行打包

首先,需要在windows中安装python,并配置环境变量,python的安装地址如下https://www.python.org/downloads/windows/,首先,必须确定一下,windows的python版本和linux的python是一个版本,这样编译才不会产生错误,安装后,进入CMD.输入python -V,如何显示错误,说明python的环境变量配置有问题,需要手动配置一下...

2019-05-21 18:19:48 372

原创 SecureCRT中配置vim

有时候,我们在putty中配置了vimrc,一些快捷键,高亮语法时,放到securecrt中不好使,需要做如下修改,第一,option Emulation中配置成Xterm,ANSI Color,use color scheme,在终端输入export TERM=xterm,无需重连,就好用了...

2019-03-18 11:10:24 290

原创 svn 解决冲突

svn 有时稀里糊涂更新后就有很多冲突,有时文件少的时候,直接svn revert --accept filename,然后svn up就行了,但是如果有很多冲突的情况下,需要执行svn revert --depth=infinity . ,这样就行了...

2019-03-08 09:40:09 234

原创 给我对象安装固态硬盘

记录贴,防止自己忘记相关步骤,我对象的电脑很慢,所以为了博得红颜一笑,我买了块固态硬盘,给她提升效率,固态硬盘分为几个不同的型号,且有不同的接口,请仔细购买,拆开电脑后,重新启动电脑,发现并没有显示多余的固态硬盘,此时需要百度一下新的硬盘如何显示,然后需要重新安装系统,下载老毛桃一键装机助手,将U盘制作为启动盘,下载windows ios活着gho后缀名的镜像文件,拷贝到U盘相应目录下,此时...

2019-02-11 10:58:43 259

原创 期货知识总结点

空换是空头持仓换手。卖出股指期货合约后所持有的持仓叫空头持仓,简称空头。多换是多头持仓换手。在股指期货交易中,投资者买入股指期货合约后所持有的持仓叫多头持仓,简称多头。多平是多头平仓。多头平仓是指空单持有者是以主动买入的方式在买一价买入转让,而不是以排队的方式在买一价买入转让。空平是空头平仓。空头平仓是指原本卖出做空的期货合约做买入平仓。双平是双边平仓。因为成交时要有人和你做对手盘 你一个人...

2018-12-28 13:38:55 918

原创 使用sqlite的一点小感悟

近期,项目选择使用sqlite为数据库,考虑到它的优点高效,方便部署,可以满足项目的需求,最开始用的时otl_stream,但是otl_stream优点是可以支持不同的数据库,项目暂时没有这个需要。sqlite的接口总体来讲很简单,分为以下三种执行方式1 直接执行,比如说建表,删除表等2 预编译执行,比如说插入表,但是每次的值有变化,可以以?的形式预编译处理,然后将具体的值绑定到预编...

2018-12-13 14:47:09 199

原创 df -h 命令卡死

今天公司服务器有个df卡死的问题,通过查阅网上的资料,我是如下解决的,首先使用strace df -h 命令查看卡在哪里,发现卡在/proc/sys/fs/binfmt.misc这个目录上,这个目录是通过systemd进行管理的,在/lib/systemd/system中存在一个后缀名是*.automount的service文件,通过systemctl stop 这个service中进行关闭。然后...

2018-09-19 09:27:51 667

转载 [转]chmod u+s用法和setuid(),seteuid()

在使用 setuid() 函数时会遇到 3 个关于 ID 的概念:real user ID – 真实用户 IDeffective user ID – 有效用户 IDsaved set-user-ID – 保存了的设置用户 ID。真实用户 ID (real user ID) 就是通常所说的 UID,在 /etc/pass...

2018-06-07 16:25:46 563

转载 [转]PROC系列之---/proc/pid/stat

 /proc/ /stat包含了所有CPU活跃的信息,该文件中的所有值都是从系统启动开始累计到当前时刻。[root@localhost ~]# cat /proc/6873/stat6873 (a.out) R 6723 6873 6723 34819 6873 8388608 77 0 0 0 41958 3...

2018-06-01 11:53:10 650

原创 为linux操作系统格式化分区

dd if=/dev/zero of=/dev/mmcblk0 bs=512 count=1 conv=fsync 从/dev/zero 向/dev/mmcblk0 写入数据然后fdisk -u /dev/mmvblk0执行n p 1 设定分区大小,例如+128Mn e 则是设定逻辑分区待补充...

2018-05-23 16:06:07 284

原创 Linux下用SCP无需输入密码传输文件

有两个服务器,一个是A,一个是B,在A的/home/root/.ssh/下会有一个名为id_rsa.pub的文件,如果没有,使用ssh-keygen -t rsa 生成一个默认的,将id_rsa.pub 放置在 B的/home/root/.ssh 中,并改成一个别名,以免覆盖。比如 a.pub,用cat a.pub >> authorized_keys中,这时scp命令会不需要密码,...

2018-05-22 15:53:15 368

原创 linux 交换两个int型变量的值

当我们想交换两个变量的值,一般来讲都是通过设置中间变量来完成的,这样会 消耗系统内存,增加不必要的冗余。以下程序通过异或来完美达到目的。 #include...

2018-05-17 13:25:06 446

原创 linux putty shell 有趣脚本之防卫主机

平时车机调试时,需要用putty连接到车机,但是大家连接的默认权限都是root,这涉及到一个问题,如果我不想 让别人用怎么办,同时我也想告诉无论是谁连接到这台主机,当前的主机正在被使用。 因为默认putty连接都是用ssh的,每次连接都会有一个ssh @pts/,从0递增 user 代表终端的0….nwhile 中i -ne -l 代表假如i的值不等于-1...

2018-05-17 09:33:16 405

转载 Netlink Socket

Netlink Socket 简介 关键字: netlink简介 Netlink 是一种特殊的 socket,它是 Linux 所特有的,类似于 BSD 中的AF_ROUTE 但又远比它的功能强大,目前在最新的 Linux 内核(2.6.14)中使用netlink 进行应用与内核通信的应用很多,包括:路由 daemon(NETLINK_ROUTE),1-wire 子系统(NETLINK...

2018-04-14 17:12:02 715

转载 unicode 和 utf-8 的区别

作者:于洋 链接:https://www.zhihu.com/question/23374078/answer/69732605 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。很久很久以前,有一群人,他们决定用8个可以开合的晶体管来组合成不同的状态,以表示世界上的万物。他们看到8个开关状态是好的,于是他们把这称为”字节“。再后来,他们又做了一些可以处理这...

2018-04-13 15:27:33 131

原创 Intellj idea 2017 搭建android开发环境

最近项目需要,简单写一个android的应用,本人也是从零开始,搭建开发环境才是开发的基础,研究了几分钟,不是很难,接下来我将简单介绍下开发环境的搭建过程。首先,下载Inellj idea 2017,百度首页搜索,当前地址是https://www.jetbrains.com/idea/,去官网安装下载后,全部执行默认安装,最后成功后打开如下图 nice,第一步成功,不过你会发现Creat...

2018-03-20 13:58:12 36763 1

原创 EXCEL 筛选数据并将列变成行

记录一下,避免自己忘记首先CTRL+F查找所有不需要的数据,CTRL+a选择后,删除行, 接下来需要每隔几行删除一行,在B2列中第一次出现的行设置1,用 鼠标将右下角黑色十字按钮拉倒底部,然后CTRL+G定位,选择常量为数字, 选择后删除行,然后我们需要将三行变成三列,在B2列设置=A2,=A3,然后 用鼠标将右下角黑色十字按钮拉倒底部,CTRL+G定位空值,删除所在行

2017-12-27 11:12:21 994

原创 制作linux U盘启动盘

首先需要将U盘格式化 fdisk -l找到U盘路径 这里举例为/dev/sdb将其格式化为fat32,即windows及linux都识别的版本mkfs.vfat /dev/sdb格式化成功后将其挂载到指定目录 我们新建一个~/x sudo mount /dev/sdb ~/x然后将ubuntu iso版本下载到linux指定目录这里举例为~/downlanddd if=~/xxx.iso

2017-11-21 14:12:31 272

原创 socket demo,实现同步异步通信

文件目录如下 socket/ ├── compile.sh ├── list.c ├── list.h ├── socket.c ├── socketClient.c ├── socket.h └── socketService.ccompile.sh#!/bin/bashgcc socket.h list.h list.c socketService.c socket.c -o s

2017-11-21 11:39:18 698

原创 C语言输出不同颜色字体

C 语言输出不同颜色字体\033是8进制,它就是unix下终端转义符ESC(16进制1A,10进制27) ESC[xm 是unix下改变终端输出颜色的命令所以,如果是红色,则我们定义为\033[0;32;31m以下为测试程序#include <stdio.h>#define NONE "\033[m"#define RED "\033[0;32;31m"

2017-11-15 11:17:12 5430

原创 基于C语言的hash表

哈希表可以理解成链表的变形,两者很类似,区别个人觉得在简单的在尾端插入数据的速度并没有太大区别, 在读取内容的时间差别很大,因为链表是遍历读取,而哈希表是通过hash值直接读取 以下是相关代码 hashmap.h/* * =====================================================================================

2017-11-14 13:57:55 932

原创 gdbus demo程序简介

近期想要写一个gdbus的demo程序,查阅了一下资料,发现貌似gdbus之间的IPC通信分为两种,一种是基于system总线,一种是基于session,我通过session通信的方式简单写了一个p2p的demo程序。 首先通过gdbus-codegen 生成.h 和.c 文件,然后通过glib gio的接口分别写了一个客户端和服务端,客户端通过method与服务端进行同步通信,服务端通过sig...

2017-11-07 20:35:42 6857 3

原创 简单C语言线程池的编写

突发奇想,想要写一个C线程池,在网上看到了类似的代码,自己按照类似的思路重新实现了一下,主要分成三个功能,线程池初始化,线程池添加任务,线程池销毁,实现方式见如下代码mythreadpool.h#ifndef __MYTHREADPOOL_#define __MYTHREADPOOL_#include<stdio.h>#include<pthread.h>typedef void* (*call

2017-10-19 19:33:41 375

原创 source insight 新手配置

首先,选择Project 选择new project,然后填写New project name,并选择想要存储工程 的路径,然后选择想要添加的文件夹,执行 add tree,这时我们就会在左边和右侧看到 要打开的项目,调整字体,在Options 中Document Options中screen Fonts调整字体 大小,然后在Auto Indent中取消两个选择框,这时为默认自动缩进.然后我

2017-06-05 15:37:14 382

原创 使用lcov生成代码覆盖率的报告

这里,我们先设想想要测试一个工程,工程有两个库,一个是客户端需要用的接口,一个是服务端需要用的接口,我们测试的目的是判断我们的测试代码覆盖了多少的工程,所以首先,服务端的CMakelists中添加这样一行。 set(CMAKE_CXX_FLAGS “${CMAKE_CXX_FLAGS} -fprofile-arcs -ftest-coverage”)-fprofile-arcs -ftest-co

2017-04-11 10:03:59 3782

转载 apt-get 命令总结

[整理] gcov lcov 覆盖c/c++项目入门 - turtle_fly - 博客园 turtle_fly的新世界 求知若渴,虚心若愚。 随笔- 18 文章- 1 评论- 0  博客园  首页  新随笔

2017-04-07 18:52:11 236

原创 sed增加,删除,替换命令

linux系统中,我有一些文件,同时我想要在文件中特定包含字符串一行的后面添加一行新的字符窜,那么,我可以这么做sed -i ‘/检索的/a\添加的’ ./* 如果想在上方添加一行,则应该是sed -i ‘/检索的/i\添加的’ ./*如果想要删除指定一行的下一行 sed -i ‘/bangngfdggh/{n;d}’ yourfile sed逐行读入文件内容到其内部的模式空间并处理,默认打印

2017-03-20 17:37:05 4936

原创 简单CMakeLists的编写

我建了一个简单的工程来学习一下CMakeLists.txt 是如何编写的 目录结构如下 CMakeLists.txt src/CMakeLists.txt helloworld.c test1.c test.c test.h TutorialConfig.h.in include其中CMakeLists.txt中为 1 cmake_minimum_required (VERSIO

2017-03-16 14:21:44 592

转载 CSDN如何转载别人的文章

对于喜欢逛CSDN的人来说,看别人的博客确实能够对自己有不小的提高,有时候看到特别好的博客想转载下载,但是不能一个字一个字的敲了,这时候我们就想快速转载别人的博客,把别人的博客移到自己的空间里面,当然有人会说我们可以收藏博客啊,就不需要转载,(⊙o⊙)… 也对。。实现  因为我自己当初想转载的时候却不知道该怎么转载,所以学会了之后就把方法写出来,帮助那些想转载却不知道该怎么转载的人(大神勿笑)。

2017-03-16 13:57:02 193

原创 linux 更新系统时间

有的时候我们发现系统的时间不对,但是用date命令并不能修改时间,重新开机后发现时间并没有变化,这时,我们需要进行如下操作# rm /etc/localtime# ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

2017-03-02 20:51:20 374

转载 linux c语言 select函数用法

原文地址:点击打开链接linux c语言 select函数用法        Select在Socket编程中还是比较重要的,可是对于初学Socket的人来说都不太爱用Select写程序,他们只是习惯写诸如connect、accept、recv或recvfrom这样的阻塞程序(所谓阻塞方式block,顾名思义,就是进程或是线程执行到这些函数时必须等待某个

2016-12-15 14:22:50 459

转载 virtual public 含义

在类重载中我们一般使用以下的方式: class   Base {     void   Echo()   {   printf( "Echo   from   Base ");} }; class   Middle   :   public   Base   {} class   Child   :   public   Middle   {} 可以很清

2016-12-08 13:49:54 295

转载 C++项目中的extern "C" {}

在用C++的项目源码中,经常会不可避免的会看到下面的代码:?123456789#ifdef __cplusplusextern"C" {#endif /*...*/ #ifdef __cplusplus}#endif它到底有什么用呢,你知道吗?而且这样

2016-12-07 16:25:06 232

转载 C++拷贝构造函数详解

原文地址:http://blog.csdn.net/lwbeyond/article/details/6202256/一. 什么是拷贝构造函数首先对于普通类型的对象来说,它们之间的复制是很简单的,例如:[c-sharp] view plain copyprint?int a = 100;  int b = a;   int a

2016-12-05 17:18:57 193

转载 动态库和静态库的区别

本文原地址:https://zhidao.baidu.com/question/1946953913764139388.html我们通常把一些公用函数制作成函数库,供其它程序使用。  函数库分为静态库和动态库两种。  静态库在程序编译时会被连接到目标代码中,程序运行时将不再需要该静态库。  动态库在程序编译时并不会被连接到目标代码中,而是在程序运行是才被载入,因此在程序运行时还需要

2016-12-05 11:04:13 199

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除