摘要:1 运行环境 操作系统:Ubuntu 18 2 inotify 简介 inotify 是一个 Linux 内核特性(监视文件系统事件),它用于监控文件系统,比如删除、读、写操作等,当发生对应事件时,则会触发 inotify。当监控目录时,与该目录自身以及该目录下面的文件都会被监控,其上有事件发生时都
阅读全文
随笔分类 - C++/C
摘要:(1)char*转换为string:直接赋值即可 char a[1024]="abcdefg"; string mm=a; (2)求char*(不包含\0)以及string的长度:strlen()函数 cout<<"a.size:"<<strlen(a)<<endl; (3) string转化为ch
阅读全文
摘要:这段时间,总是要使用char或者char* 赋值给std::string,踩了不少坑。于是写了个测试代码,如果你不想看我的代码,可以跳到下面直接看总结: #include <string> #include <iostream> using namespace std; int main(int a
阅读全文
摘要:项目场景: 在使用C++中thread类创建子线程完成相关功能,并且主线程不阻塞直到子线程完成。 问题描述: 子线程的初始化在对象的初始化过程中,并且子线程有自己独立的功能,主线程并不阻塞直到子线程完成对应的功能。类似代码示例如下: void task1(std::string msg){ std:
阅读全文
摘要:接触c以来有很多好奇的问题,其中一类是关于栈的。比如:栈上存储了哪些数据?函数参数怎么传递的?返回值怎么传出去的?从一个函数是怎么跳转到另外一个函数的?为何gdb可以看到函数的调用栈?为何有些栈的信息会乱? 如果要讲清楚core栈的信息为何有很多问号,想了下觉得应该先从如何确定函数的调用栈来讲。 注
阅读全文
摘要:背景 在GCC中已经指定链接库,然而编译时却提示动态库函数未定义! 测试出现的错误提示如下: [GMPY@13:48 tmp]$gcc -o test -L. -lmylib test.c /tmp/ccysQZI3.o:在函数‘main’中: test.c:(.text+0x1a):对‘func_
阅读全文
摘要:情况描述: 这个错误在移植其它平台(Linux?)的代码到windows下,并使用较高版本的visual studio时可能会出现 错误原因:各平台下编码格式不同,在跨平台时代码可能需要切换到相应的编码格式(有的时候不会报这个错误,迷惑) 已有的解决方案: 方案一,将代码复制到sublime tex
阅读全文
摘要:目录 快速设定 向错误的执念开炮,向C编译器开炮 编译警告应当被忽略吗?warning不重要吗? (1)编库时调用了未定义函数(非编译器内置函数),编译只报warning;链接该库时报error (2)编库时调用了未定义函数(编译器内置同名函数),编译只报warning;链接该库时报error (3
阅读全文
摘要:C++中map容器提供一个键值对容器,map与multimap差别仅仅在于multiple允许一个键对应多个值。本文主要总结一下map基本用法和嵌套用法示例。 一、map基本用法 1 头文件 #include <map> 2 定义 map<int, int> my_Map; //注意这里的int和i
阅读全文
摘要:API 或 MFC 视窗程序 里 有 函数, 例如 API 函数 设位置: BOOL SetCursorPos( int x, int y); 参数是屏幕坐标x,y 头文件 Winuser.h 链接库 #pragma comment (lib, "User32.lib") 或取位置 GetCurso
阅读全文
摘要:模拟鼠标点击: 1、这里是鼠标左键按下和松开两个事件的组合即一次单击: mouse_event (MOUSEEVENTF_LEFTDOWN | MOUSEEVENTF_LEFTUP, 0, 0, 0, 0 ) 2、模拟鼠标右键单击事件: mouse_event (MOUSEEVENTF_RIGHTD
阅读全文
摘要:在windows下模拟鼠标键盘输入的几种方法 最近小叮咚使用的服务器(第3方的asp服务器,不是iis)在启动后总是不能自动运行,可能里面有Bug,需要点击启动按钮后才能连接到internet上.为了保证小叮咚的稳定运行,我把我的机器(放在家)配置成每小时启动一次,启动后自动运行服务器软件这个软件没
阅读全文
摘要:#include <stdio.h> #include <windows.h> void Click_leftmouse() { mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0); mouse_event(MOUSEEVENTF_LEFTUP, 0, 0,
阅读全文
摘要:文章目录 了解windows库函数 了解句柄 实现思路与代码 在制作面向用户系统时,我们往往需要设置除输入参数外更为灵活的操作方式,例如鼠标点击、按键按下(无阻塞输入)等;同时,我们需要制作更为精美的 UI而不是简陋的黑白界面。然而,纯C语言本身并不提供这些函数,为实现这些操作,我们需要调用 win
阅读全文
摘要:C语言 在程序中打开网页,模拟鼠标点击、键盘输入 一、简述 记--使用C语言 打开指定网页,并模拟鼠标点击、键盘输入。实现半自动填写账号密码,并登录网站(当然现在的大部分网站都有验证码,或有检测"非人为"操作,以防止恶意注册、登录)。 例子打包:链接: https://pan.baidu.com/s
阅读全文
摘要:商业程序如何加载自己的so 使用LD_LIBRARY_PATH的缺点是要实现设置LD_LIBRARY_PATH。不够自动化。那么大型的商业程序是如何加载自己的so呢。 这里以QtCreator为例。 QtCreator安装在/home/xxx/Qt5.3.1目录下。使用ldd查看qtcreator依
阅读全文
摘要:通过cmake编译链接动态库后,会有一个问题,那就是需要的.so文件不能更改目录,一旦.so文件目录变了,整个程序就没法运行了,这肯定是不行的。 原因 后来我查一下一下,linux系统中,程序加载运行需要的.so文件是有顺序的 环境变量LD_LIBRARY_PATH指定的路径 gcc 编译时指定的运
阅读全文
摘要:编译C/C++文件时,很多时候都是直接使用像 gcc main.c 或者 g++ main.cpp 这样的命令编译的。但是代码文件多了后,这样编译就很困难了。这时候 就出现了MakeFile 这个工具。 MakeFile 解决了多个文件编译难的问题,有了MakeFile,只需要在MakeFile的目
阅读全文
摘要:文章目录 spdlog库 日志记录槽sink 日志记录器logger 输出格式pattern 对齐方式 截断 字符串格式化fmt Format Specification spdlog使用 异常处理 logger 基础用法 stdout日志 文件日志 基本文件 循环文件 每日文件 示例 spdlog
阅读全文
摘要:函数指针 1. 定义 每一个函数都占用一段内存单元,它们有一个起始地址,指向函数入口地址的指针称为函数指针。 注意:函数指针的本质是一个指针变量,且指针指向的函数的入口地址 2. 语法 指向函数的指针变量的一般定义形式为: 数据类型 (*指针变量名) (参数表); 3. 说明 函数指针定义形式中的数
阅读全文