自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

frank_liuxing的专栏

点滴积累

  • 博客(43)
  • 问答 (2)
  • 收藏
  • 关注

原创 libcurl上手笔记-HTTP方法 GET、POST、PUT、DELETE

GET方法比较简单,使用一条语句设置即可。

2024-04-10 12:41:34 406

原创 libcurl上手笔记-Linux

linux上使用libcurl,编译,运行example成功

2024-04-02 10:13:39 353

原创 libcurl安装-Windows平台

由于c++项目需要通过https请求与后台通信,于是找到了curl这个c++开源库。需要支持Windows平台和Linux系统,于是,先尝试在Windows上安装。

2024-04-01 15:02:05 1062 3

原创 websocketpp上手笔记-Windows安装

WebSocketpp Windows上手笔记

2024-04-01 10:44:13 726

原创 写一个可执行的动态库

写一个C风格的入口函数,无参数、无返回值。入口函数只依赖系统调用,结尾调用exit退出程序。不要依赖其他动态库,哪怕是自己,即不依赖自己导出的函数。编译时,使用-e 指定入口函数。编译时使用-fPIC参数。

2024-03-07 10:49:17 854

原创 查看Java的线程名称

在linux系统中查看Java程序的线程名称

2022-07-18 15:07:57 1293 1

原创 记一次c++ auto的坑

class A;A& find(){ A& a = ; //find a return a;}//调用的地方,虽然find返回引用,但是a的类型是A,会调用find的复制构造函数auto a = find();//如果要使用引用类型应该这样写:auto &a = find();结论:通过auto将变量申明成引用类型,一定要加引用符号。...

2022-04-08 21:47:08 874

原创 智能指针之unique_ptr

unique_ptr介绍前言什么情况下使用unique_ptrunique_ptr介绍构造、复制、赋值常用成员函数判断指针是否为空实践资源守卫:局部变量资源守卫:文件句柄,设置Delete函数独占资源:成员变量所有权转移:事件队列总结前言C++里面的四个智能指针: auto_ptr, unique_ptr,shared_ptr, weak_ptr 其中后三个是C++11支持,并且第一个已经被C++11弃用。智能指针主要用于管理在堆上分配的内存,它将普通的指针封装为一个栈对象。当栈对象的生存周期结束后,

2020-06-14 13:56:44 1616

转载 MySQL Character Set Problem 详细解释

MySQL Character Set Problem 详细解释http://www.codesoil.net/tag/charset Character Set Problem in PHP + MySQL4.1+和许多人一样,我也是在转移blog时才发现这个问题。虽然是一个很老的问题了,为避免沉痛教训,这里就把相关知识做一总结,以方便后人。【现象

2017-12-05 10:14:25 395

转载 c++ 宏的奇淫技巧

原文地址:http://www.cnblogs.com/youthlion/archive/2012/02/04/2338265.html众多C++书籍都忠告我们C语言宏是万恶之首,但事情总不如我们想象的那么坏,就如同goto一样。宏有 一个很大的作用,就是自动为我们产生代码。如果说模板可以为我们产生各种型别的代码(型别替换), 那么宏其实可以为我们在符号上产生新的代码

2017-10-13 09:13:32 1023

原创 python 计算windows上的某个进程的cpu使用率

import timeimport wmi wmiInterface = wmi.WMI () process_info = {}while True: #Change the looping condition for process in wmiInterface.Win32_Process (name="NAME of the EXE"): id = process.Proce

2017-09-28 13:30:05 4694 1

原创 cmake 为release版本创建pdb文件

set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /Zi")set(CMAKE_EXE_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS_RELEASE} /DEBUG /OPT:REF /OPT:ICF")原理:https://www.wintellect.com/correc

2017-08-29 12:59:44 4800

原创 cmake 设置vs工程的MT、MTd

cmake设置vs工程的多线程链接库MT、MTd

2017-06-30 17:26:28 17175 1

转载 mysql数据库备份与还原

数据备份  1、使用mysqldump命令备份  mysqldump命令将数据库中的数据备份成一个文本文件。表的结构和表中的数据将存储在生成的文本文件中。  mysqldump命令的工作原理很简单。它先查出需要备份的表的结构,再在文本文件中生成一个CREATE语句。然后,将表中的所有记录转换成一条INSERT语句。然后通过这些语句,就能够创建表并插入数据。  1、备份一个数

2017-05-05 15:52:01 335

原创 linux ssh 公钥免密码登录

应用场景在shell脚本中使用ssh远程执行命令或者copy文件时,希望一切自动化,不需要提示输入密码,然后手动输入。方法执行ssh-keygen -t rsa,在$HOME/.ssh中生成rsa私钥文件id_rsa和公钥文件id_rsa.pub.执行 ssh-copy-id user@hostname,将公钥文件发放到远程机器上,具体是将id_rsa.pub的内容追加到远程用户的$HOME/.

2017-02-10 17:20:56 530

原创 Linux文件夹权限777,无法创建文件

问题描述在linux系统中,使用mysql导出csv文件,默认文件夹是/tmp目录,可以导出成功,然后我在/tmp/下面创建了一个lx目录,并将/tmp/lx的权限设置为777,也就是/tmp与/tmp/lx的权限都是777,再将mysql数据导出到lx目录,报错:ERROR 1 (HY000) at line 16 in file: './export.sql': Can't create/wri

2017-01-09 18:01:05 9178

原创 c++中的64位整数

c99标准以前主流编译器不支持64位整数。c99标准c99将long long纳入标准中。long long类型的位数不低于64. Linux上GCC从4.5版本开始,完全支持c99标准,因此可以使用long long表示64位整数。 Windows VC6.0 不支持c99标准,但是windows为了支持64位整型,可以使用__int64来表示64位整数。c++11标准long long进入了

2017-01-04 18:08:53 5801

原创 Linux 输出流重定向缓冲设置

问题描述我写了一个Linux程序,程序很简单,源码如下:#include <stdio.h>#include <unistd.h>int main(){ for(int i = 0; i < 10;i++) printf("hello world\n"); sleep(1000000); return 0;}在终端上执行时,打印出期望的信息:

2017-01-04 12:36:51 12702 2

原创 应用程序无法正常启动(0xc0000013),请单击确定关闭应用程序。

问题描述在windows7上面使用visual 2013编写的c++程序,在本机运行正常,copy到windows server2008 R2上,打开时抛出如上错误,如图: 其中:程序为32位,win7系统为64位,windows server 2008系统为64位。原因windows server 2008机器上没有安装visual c++运行库。解决办法从微软官网上下载visual c+

2017-01-03 18:04:28 10718

原创 欢迎使用CSDN-markdown编辑器

mysql将查询结果导出为csv文件概述mysql的sql语句支持将查询结果保存为csv文件的功能。可以参考http://www.mysqltutorial.org/mysql-export-table-to-csv/.

2016-11-21 11:00:54 346

转载 SecureCRT配色方案

一、配色后的效果图二、设置背景颜色    1、选项(Options)==》会话选项(Sessions options)==》终端(Terminal)==》仿真(Emulation)    2、在 终端(T) 下拉列表中选择Linux,勾选 ANSI颜色(A)    3、选项(Options)==》全局选项(Global options)==》终端(Termi

2016-05-10 16:03:06 609

原创 c++ 根据指针类型获取原类型

templatestruct get_type{ typedef T type;};//指针类型的偏特化 templatestruct get_type{ typedef T type;};//使用方法int main(){ get_type::type a; //a的类型为int}

2016-02-18 15:16:10 2280

转载 What's BNF Notation

原文:http://cui.unige.ch/db-research/Enseignement/analyseinfo/AboutBNF.htmlWhat is BNF notation?BNF is an acronym for "Backus Naur Form". John Backus and Peter Naur introduced for the first time a f

2015-05-26 10:40:40 612

转载 Win32调试内存错误提示

Win32 Debug CRT Heap Internals… by Andrew Birkett ([email protected])If you are lazy, skip the explanation and jump to the table at the bottom of the pageWhen you compile programs with DevStudio

2015-04-28 13:03:48 965

转载 每个程序员需掌握的20个代码命名小贴士

本文是码农网原创翻译,转载请看清文末的转载要求,谢谢合作!代码中到处都需要命名。作为程序员,我们得给类命名,给变量命名,给函数命名,给参数命名,给命名空间命名,等等等等。下面有20条小贴士能帮助你提高你的命名能力。1.使用能够表达意图的名字名字得能告诉我们它要做什么,为什么存在,以及是如何工作的。选择能够表达意图的名字,将更有利于我们理解代码。int d; //

2015-03-25 13:22:42 545

转载 Windows上WinRAR.exe命令行参数说明

winrar.exe 命令行参数[语法]RAR    [ - ]      [ ]RAR [ ]   [ ]一.简单的例子和说明:压缩文件夹winrar.exe a -ag -k -r -s -ibck c:/bak.rar c:/dat/压缩多个文件winrar a -ag -ibck bak.rar filename1 filename2

2015-03-20 18:45:29 25267

转载 BFPRT算法

转自:http://noalgo.info/466.htmlBFPRT算法是解决从n个数中选择第k大或第k小的数这个经典问题的著名算法,但很多人并不了解其细节。本文将首先介绍求解这个第k小数字问题的几个思路,然后重点介绍在最坏情况下复杂度仍然为O(n)的BFPRT算法。一 基本思路关于选择第k小的数字有许多方法,其效率和复杂度各不一样,可以根据实际情况进行选择。

2015-03-20 15:16:00 1058

原创 printf %g 的精度问题

MSDN说:g double Signed value printed in f or e format, whichever is more compact for the given value and precision. 当需要输出浮点数时,采用%g,它会根据浮点数的值来选定使用%f输出还是%e输出。发现如下现象:double d = 9999.01;printf("%

2015-03-10 16:51:09 2311

原创 c++ 变长参数的作为参数

有时候不仅需要处理变长参数,还需要将变长参数作为参数,传递给其他函数。先上一段代码,定义一个函数:/*函数说明write_log, 向文件中写字符串*@param pf 文件指针*@param format 格式字符串(与printf格式相同)*@param ... 可变长参数*/void write_log(FILE* pf, const char* format, ...

2015-02-10 16:17:53 2552

原创 c++ double类型的误差

将字符串转化为double类型存在误差,例如:字符串为1.89转化为double类型为:1.8899999999999.这是正常的。在c语言中头文件float.h中有如下定义:#define DBL_EPSILON 2.2204460492503131e-016 /*smallest such that 1.0+DBL_EPSILON != 1.0 */也就是说,只要使

2015-02-10 15:44:39 6489

原创 nafxcw.lib(afxmem.obj) : error LNK2005: "void * __cdecl operator new(unsigned int)" (??2@YAPAXI@Z)

环境:在非MFC程序(使用standard windows library)中,添加MFC支持,静态链接MFC库。  发生以下错误:uafxcw.lib(afxmem.obj) : error LNK2005: "void * __cdecl operator new(unsigned int)" (??2@YAPAXI@Z) already defined in LIBCMT

2015-02-06 16:20:10 1171

原创 c++ 访问sqlserver数据库,插入速度优化

1. 概述使用c++访问数据库的方法很多,由于我访问的是sqlserver数据库,于是上MSDN查了一下有哪些访问技术,主要有以下几种:ODBC  OLEDBADOADO是OLEDB的封装,使用起来比OLEDB方便。由于ADO比OLEDB多了一层,其速度可能不及OLEDB,所以就不考虑ADO了。数据库获取方法参考MSDN:https://msdn.microsoft.c

2015-01-28 15:30:36 15230 7

原创 Unicode与UTF-8

好记忆不如一只烂笔头,

2014-10-09 10:55:51 661

原创 sqlserver 测试插入速度

之前做个项目,写个应用程序,shixi

2014-08-13 16:16:54 3039

原创 c++获取文件信息——_stat函数的使用

c++获取文件信息——_stat函数的使用_stat函数的功能_stat函数用来获取指定路径的文件或者文件夹的信息。函数声明int _stat( const char *path, struct _stat *buffer );参数:path——文件或者文件夹的路径buffer——获取的信息保存在内存中返回值:正确——返回0错误——

2014-01-21 15:31:18 48218 2

原创 c语言中的可变长参数

前言可变长参数指函数的参数个数在调用时才能确定的函数参数。基本上各种语言都支持可变长参数,在特定情形下,可变长参数使用起来非常方便。c语言中函数可变长参数使用“...”来表示,同时可变长参数只能位于固定参数的后面,固定参数的个数至少为1。只要学习过c语言的,应该都知道printf函数,并且见识到了其强大的功能——事实上,迄今为止,我仍认为这是c函数库中最牛逼的函数之一。一、一个简单的例子

2014-01-08 16:12:03 3880

原创 使用sql查找主键

有时没有工具可以查看数据库表的主键,此时只能使用sql语句来实现。下面两种方法较为简单(sql server能执行成功,Oracle或者其他数据库没有尝试过)。1:利用SQL自带的存储过程 EXEC sp_pkeys @table_name='表名'2:利用系统表INFORMATION_SCHEMA.KEY_COLUMN_USAGE SELECT TABLE_NAME,COLUMN

2014-01-03 11:09:08 3160

原创 关于文件中的0D、0A

文件一般分为文本文件和二进制文件。  在windows文本文件中,分行即‘\n“,表示为0x0D 0x0A。分为两种情况: 如果你想一个文本文件中写入一个'\n',文本文件中会增加0x0D 0x0A两个字节(可以使用utraledit来查看,记事本是看不出来的);如果你读一个文本文件,一旦遇到0x0D 0x0A,遍会读为一个'\n'(0x0A)。   而在windows的二进制文件

2013-12-04 15:35:32 4945

原创 通过Hook将DLL注入进程

首先,读这篇文章之前,默认已经掌握了进程地址空间,dll加载,windows Hook技术。1. 为什么需要dll注入?如果一个进程的程序是我们自己编写的,我们可以在程序中隐式或者显式地加载需要的dll,不需要dll注入。但是,当一个进程的程序不是我们编写的,而我们又需要该程序加载指定的dll,以便进行某些操作,这是就需要dll注入。我们知道,dll可以被多个进程加载,当一个进程加载d

2013-10-18 10:16:44 6088

转载 内存映射文件例子

内存映射文件 http://kymcuc.blog.163.com/blog/static/201942114201211542541308/1、利用段在同一程序的多个实例之间共享数据#includeusing namespace std;#pragma data_seg("shared")//自定义端,名字为sharevolatile long g_

2013-10-10 15:51:42 2376

空空如也

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

TA关注的人

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