自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(78)
  • 资源 (2)
  • 收藏
  • 关注

原创 android studio Unable to download file ‘xxx‘ in offline mode.

Unable to download file 'xxx' in offline mode.

2024-02-29 14:30:17 435

原创 git 只同步分支的某些文件

文件和远程的 main 分支的 test.cpp 文件同步,保持一致。

2023-08-28 22:41:41 353

原创 fatal: No url found for submodule path ‘xxx‘ in .gitmodule

执行 git submodule update 更新三方库的时候报错:fatal: No url found for submodule path 'xxx' in .gitmodule解决:git rm --cached xxx.

2022-05-31 20:58:19 2131 3

原创 超详细android 11源码编译 + pixel3 刷机

前言编译安卓源码最开始以为是个大活,乍一听吓人一跳,其实不然,按照别人的方法来,就没啥大的问题,哈哈,咱就是白嫖怪。但是里面有很多坑,如果不注意的话,就会掉进去。环境Ubuntu 18.04.6 LTS , 内存空间100G+ ,cpu核数 8mac 电脑pixel3 二手 (买不起新的,狗头)在ubuntu机器上编译源码,在mac上安装。步骤1.拉android源代码2.拉驱动脚本3.编译系统4.刷机拉android源代码参考:AOSP | 镜像站使用帮

2022-04-30 14:51:02 7750 3

原创 正则匹配以字串开头的多项字符串

#include <iostream>#include <regex>#include <vector>int main(){ std::regex reg("^e.*|^mp.*"); std::vector<std::string> ext{"en0", "en2", "rm", "mp4", "eth0", "null"}; for (int i = 0; i < 6; i++) .

2022-03-25 11:02:22 1431

原创 curl_easy_cleanup() 崩溃的一种情况

curl_easy_cleanup() 崩溃的一种情况

2021-12-23 22:07:18 1197 1

原创 c++ 代码判断CPU 架构,操作系统类型,cmake 中判断CPU 架构,操作系统类型

在c++代码中,我们可以利用,系统或者编译器的宏定义来判断操作系统类型,cpu架构,这在跨平台程序中经常用到。c++代码中判断#include<iostream> int main(){#if defined __linux__ std::cout<<"linux system"<<std::endl;#elif defined __ANDROID__ std::cout<<"android system"<<s

2021-12-23 21:59:52 11310 2

原创 valgrind 3.14 在arm 64 上的报错

Note: see also the FAQ in the source distribution.It contains workarounds to several common problems.In particular, if Valgrind aborted or crashed afteridentifying problems in your program, there's a good chancethat fixing those problems will prevent .

2021-10-27 18:36:38 861

原创 vscode 添加文件头header和函数注释

说明很多同学说需要下载一些插件才可以,其实并不需要,只需要在设置中设置 fileheader.customMade 和 fileheader.cursorMode 就可以了。一下是mac 环境,快捷键因系统不同有差异。fileheader.customMade (control + command + i) 设置文件的headerfileheader.cursorMode (control + command + t) 设置函数的注释头例子{ ...

2021-10-08 21:57:48 3478

原创 kmp 算法

#include<string>#include<iostream>using namespace std;vector<int> getnext(string s) { vector<int> next(s.size(),0); next[0] = 0; int j = 0; for (int i = 1; i < s.size();i++) { if (j > 0 && s.

2021-07-15 10:50:31 93

原创 c++ 通过指针访问类中的private成员

除了通过类的成员方法访问类的私有成员变量,我们还可以通过指针的方式来访问。class test {public: void print() { cout << "a address:" << &a << endl; cout << "b address:" << &b << endl; }private: int a = 10; int b = 9

2021-06-28 16:19:21 1850

原创 C++继承时的对象内存模型

最近在复习c++ 继承多态的相关知识,看的头大,来做个总结,giao~单继承时的内存模型class base1{public: virtual void g1(){} virtual void f1(){} virtual void h1(){}public: int ba1 = 10;};class child:public base1 {public: void g1(){} //重写g1函数 void f2(){}private

2021-06-28 10:23:03 528

原创 从一个数组中删除另一个数组给出的下标值所对应的值

这是我在面试中遇到的一道题,遗憾的是我没有写出来。给定两个数组,第一个数组为数据,第二个数组为排序的下标的集合,删除第一个数组中由第二个数组给出的下标值对应的值,要求时间复杂度为o(n),空间复杂度为o(1)。对于这种要求,毫不犹豫的就要用覆盖的方式去删除,这样才能达到o(n)和o(1)。思想就是移动着用数组后一个值去覆盖前一个值,遇到第二个数组给的下标就跳过。#include<vector>#include<iostream>using namespace s

2021-06-22 21:22:14 247

原创 python2 ftp上传文件报错: ftplib.error_temp: 425 Failed to establish connection.

下面是一段ftp上传代码:import osimport os.pathimport ftplibfrom ftplib import FTPdef ftp_win_up(filename): ftp=FTP() ftp.set_debuglevel(2) ftp.connect('10.44.34.12','21') ftp.login('laoding','123456') try: ftp.cwd('/demo/test'

2021-04-08 10:52:21 1423

原创 webrtc 编译报错 WINDOWSSDKDIR KeyError: ‘WINDOWSSDKDIR‘

$ gn gen out/Debug_32 --ide=vs2017 --args="is_debug=true target_cpu=\"x86\""Traceback (most recent call last): File "D:/xunlei/webrtc/webrtc_build/src/build/vs_toolchain.py", line 569, in <module> sys.exit(main()) File "D:/xunlei/webrtc/web.

2021-04-01 18:02:43 1297 6

原创 win10 设置两个静态ip

本例中设置成192.168.1.* 和 192.168.2.*设置的静态ip不要和其他人冲突,造成无法上网。点击顺序:状态栏网络图标网络和internet设置更改网络适配器选项右击WLAN图标,点击属性internet协议版本4(tcp/ipv4),点击属性添加两个静态ip,那就意味着你必须知道这两个网段是可用的,默认网关,首选DNS服务器ip一定要设置好。这只是添加了一个,接着点击高级,添加第二个网段。设置完成。...

2021-03-30 11:13:10 3396

原创 解决进入容器之后,界面变小

解决进入容器之后,界面变小:sudo docker exec -it -e LINES=$(tput lines) -e COLUMNS=$(tput cols) test bash

2020-12-03 10:24:07 354

原创 vim 简单配置

""""""""""""""""""""""""""""""""""""""=>全局配置<="""""""""""""""""""""""""""""""""""""""关闭vi兼容模式"set nocompatible"设置历史记录步数"set history=1000"开启相关插件""侦测文件类型"filetype on"载入文件类型插件"filetype plugin on"为特定文件类型载入相关缩进文件"filetype indent on"当文件在外.

2020-11-21 20:40:31 136

原创 awk 计算文件夹下所有文件的每一列的平均值

awk 计算文件夹下所有文件的每一列的平均值for file in ./*.logdo if test -f $file then avg=`awk '{if (NR>1) for(i=1; i<=NF; i++) {a[i]+=$i; b[i]++}}; END {for(i=1; i<=NF; i++) printf "%f%s", a[i]/b[i], (i==NF?ORS:OFS)}' $file` echo $file.

2020-11-18 17:41:45 564

原创 windows下使用nc 命令,探测udp端口是否连通

1.首先在windows下安装 nc 命令,在cmd中运行。 链接:https://eternallybored.org/misc/netcat/链接:https://eternallybored.org/misc/netcat/2.在解压缩的文件中,找到 nc.exe ,把他复制到 C:\Users\lao_ding\nc.exe 路径下,就能在cmd中运行3.探测 udp 端口:服务端:nc -l -u -p 6000客户端:nc -u 192.168.1.12 6000.

2020-09-21 16:55:46 8439

原创 win10 系统网络图标只剩下飞行模式,没有wifi和本地连接 解决方法

1. 在搜索框输入 msconfig ;2.打开这个应用;3.取消第三个选项,选择第一个,然后重启电脑;

2020-09-18 20:12:06 21583 19

原创 std::map c++两个map合并成一个map ,c++多个map的合并

#include <map>#include <iostream>int main(){ std::map<int, int> v1 = { {1, 1}, {2, 1}, {3, 1}, {4, 1}, {5, 1} }; std::map<int, int> v2 = { {4, 2}, {5, 2}, {6, 2}, {7, 2} }; std::map<int, int> v3 = { {8, 2}, {.

2020-08-26 11:46:21 10760

原创 leetcode 24:两两交换链表的节点

给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。示例:给定 1->2->3->4, 你应该返回 2->1->4->3.class Solution {public: ListNode* swapPairs(ListNode* head) { i...

2020-04-15 20:58:50 170

原创 半同步半反应堆线程池模型

#ifndef THREADPOOL_H#define THREADPOOL_H#include <list>#include <cstdio>#include <exception>#include <pthread.h>#include "locker.h"//线程池类:模板参数为任务对象template< typen...

2020-03-30 15:34:54 266

原创 c 实现堆排序 建立堆

堆排序过程:1.通过数组建立一个堆,升序排序建立大根堆,降序排序建立小根堆;2.每次调整完一次,将最大的跟=根节点的值换到数组最后一个位置,然后重新调整【0~n-1】为一个新的大根堆,以此排序。代码:#include<iostream>#include<stdio.h>#include<queue>#include <vector...

2020-03-30 00:29:30 291

原创 使用STL priority_queue 解决topk 问题

思想:priority_queue 底层是由堆实现的,所以使用堆这种数据结构,时间复杂度n*lg(k)(假设n个数据都要调整,且堆的调整复杂度为堆的高度lg(k)),空间复杂度k。代码如下:#include<iostream>#include<stdio.h>#include<queue>#include <vector>usin...

2020-03-29 12:49:37 752

原创 ubuntu14下mysql忘记密码的解决方法

参考博客:https://blog.csdn.net/ubuntu64fan/article/details/49795885ubuntu14.04忘记了mysql的用户(root)的密码。接下来:使用mysqld_safe重置密码,mysqld_safe相当于mysqld的管理程序,守护进程。1) 停止mysql服务$ sudo stop mysql2) 启动mysqld_...

2020-03-19 17:11:54 187

原创 gdb 动态显示代码,代码显示在上方

使用如下命令启动gdb:gdb -tui main或者在启动gdb后, 输入命令focus或layout:记得先打断点,run之后在使用命令。

2020-02-24 19:01:01 734

原创 awk 给某一列拼接 并且去掉空行

数据:uint32_t snd_maxcount;uint32_t fastresend; uint32_t incr; uint32_t reset_counter; uint32_t role; ...

2020-02-18 23:23:06 912

原创 c++智能指针和普通指针之间相互转换

#include <iostream>#include <memory>//智能指针的头文件class test{public: test(int d) :data(d){} int data;};int main(){ test *p = new test(10);//初始化一个test对象 std::shared_ptr&...

2020-02-07 20:25:34 13186 2

原创 leetcode 15:三数之和

排序 + 双指针本题的难点在于如何去除重复解。算法流程:特判,对于数组长度 n,如果数组为 null或者数组长度小于 3,返回空。对数组进行排序。遍历排序后数组:[1]若 nums[i]>0:因为已经排序好,所以后面不可能有三个数加和等于 0,直接返回结果。[2]对于重复元素:跳过,避免出现重复解[3]令左指针 L=i+1,右指针 R=n-1,当 L<R 时,执行循环...

2020-01-17 20:42:52 93

原创 python正则表达式获取文件中满足条件行数中需要的数字,获取字符串后面的数字

处理类似这种日志文件,需要获取1103981388。*-*[server:relay][step:alloc_confirm_requst][ri:1103981388][m:1];*-*[server:relay][step:alloc_confirm_requst][ri:1091641597]awdwfwxdqex;#!/usr/bin/python# -*- coding...

2019-12-31 21:02:52 1035 1

原创 Ubuntu14.04安装Docker

Ubuntu14.04安装完全参考官方文档:https://docs.docker.com/install/linux/docker-ce/ubuntu/#install-docker-ce-1$ sudo apt-get update//安装https支持$ sudo apt-get install \ apt-transport-https \ ca-certif...

2019-12-28 19:23:04 163

原创 curl: symbol lookup error: curl: undefined symbol: curl_mime_free 解决方法

其实就是更新一下版本就可以了。下载curl包(可以在这个网站上找最新的版本 http://curl.haxx.se/download/)wget https://curl.haxx.se/download/curl-7.55.1.tar.gztar -xzvf curl-7.55.1.tar.gzcd curl-7.55.1 ./configure make mak...

2019-12-26 01:11:59 10639 2

原创 ubuntu 14.04 与 CentOS 升级GCC/G++至5版本,linux 报错E: Unable To Locate Package Software-properties-common

# 支持 ubuntu 14.04add-apt-repository ppa:ubuntu-toolchain-r/test && apt-get updateapt-get install gcc-5 g++5 ln -s /usr/bin/gcc-5 /usr/bin/gcc -fln -s /usr/bin/gcc-ar-5 /usr/bin/gcc-ar -f...

2019-12-20 15:52:56 847

原创 c,c++调用lua脚本,并传入table,for循环构造table

使用c 和c++调用lua脚本时,有时需要传入比较复杂的参数,所以先转化成table比较好:c++代码:好多代码都是连续很多语句压栈,但是有时候不确定长度的时候就显得很不好用,使用for循环就比较好。要注意的是,每次入栈key-value键值对,都需要将他们弹出放入table,如下:#include <stdio.h>#include<stdlib.h>#...

2019-11-22 22:35:54 583

原创 ubuntu 安装 tcmalloc 或者E: Unable to locate package google-perftools

执行命令:sudo apt-get install google-perftools//如果报错在/usr/bin下找不到,建立一个软连接ln -s libtcmalloc.so.4 libtcmalloc.so在CMakeList.txt中直接链接:target_link_libraries(${SERVER_APP_NAME} -ltcmalloc)如果报错:E: ...

2019-11-20 19:53:32 3888

原创 libsqlite3.a(sqlite3.o): In function `unixDlError':sqlite3.c:36659: undefined reference to `dlerror'

出错如下:libsqlite3.a(sqlite3.o): In function `unixDlError':sqlite3.c:36659: undefined reference to `dlerror'解决:-ldl 的顺序和-lsqlite的顺序换一下,就ok了。

2019-10-13 19:54:38 914

原创 error while loading shared libraries: libboost_thread.so.1.69.0: cannot open shared object file: No

原因是自己链接的库再系统路径下找不到。解决:export LD_LIBRARY_PATH=/home/maomao/boost/lib/:$LD_LIBRARY_PATH指定路径。

2019-08-30 16:08:53 873

原创 boost库不安装使用和安装使用

boost库某些库不需要编译,包含头文件就可以使用,有些需要编译后才能使用。不一定非得按照教程安装完成才能使用,那样太过于庞大。并且还要安装很多依赖,所以只需要取需要的库就可以了。使用命令解压:tar zxvf boost_1_69_0.tar.gz进入解压后的文件夹。使用命令查看哪些库需要单独编译:./bootstrap.sh --show-libraries结果如下...

2019-08-30 15:49:14 1533

原生android 11 系统手动编译包,直接下载即可安装,内置系统驱动

该安装包内置驱动,是开源android 11 的系统,自己手动编译的,编译过程见:https://blog.csdn.net/qq_40340448/article/details/124502496?spm=1001.2014.3001.5502 。 用于测试以及,签发系统签名,安装系统级别apk都可,获得系统权限。 下载下来,使用fastbot 相关命令即可安装使用。

2022-05-04

剑指offer 第二版 答案解析

剑指offer 第二版 答案解析,详细讲解过程和测试用例。

2018-06-28

空空如也

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

TA关注的人

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