摘要:
![](https://img2020.cnblogs.com/blog/2070075/202107/2070075-20210716180115715-112228958.png) ![](https://img2020.cnblogs.com/blog/2070075/202107/2070075-20210716180123760-1324114687.png) ![](https://i 阅读全文
摘要:
bind_test.cpp #include <fmt/format.h> #include <console_color.h> #include <boost/bind.hpp> using namespace std; using namespace fmt; using namespace c 阅读全文
摘要:
case.cpp内容如下: #include <iostream> using namespace std; char jc_tolower(char c) { return (c >= 'A' && c <= 'Z') ? (c | 0x20) : c; } char jc_toupper(cha 阅读全文
摘要:
sign.cpp内容如下: #include <iostream> using namespace std; bool opposite_sign(int a, int b) { return ((a ^ b) < 0); } int main(int argc, char **argv) { in 阅读全文
摘要:
average.cpp内容如下: #include <iostream> using namespace std; int average(int a, int b) { return (a & b) + ((a ^ b) >> 1); } int main(int argc, char** arg 阅读全文
摘要:
set.cpp内容如下: #include <iostream> using namespace std; int set_nth(int x, int n) { return x | (1 << n); } int main(int argc, char **argv) { const int k 阅读全文
摘要:
least_bit.cpp内容如下: #include <iostream> using namespace std; int save_least_bit(int n) { return n ^ (n & (n - 1)); } int save_least_bit2(int n) { retur 阅读全文
摘要:
做法:将数N表示成二进制,并设法(下面会实现)使most significant bit(就是最高位是1的位)以后的所有位设置为1,如: N = (101011), 即十进制的43,经过上述方法变成 (111111),即十进制的63,并对该结果加一得到(1000000),再除以2得到(100000) 阅读全文
摘要:
check.cpp内容如下: #include <iostream> using namespace std; // check if the i-th bit is set or not in the binary form of n. bool check(int n, int i) { if 阅读全文
摘要:
count_one.cpp内容如下: #include <iostream> using namespace std; int count_one(int n) { int count = 0; while (n) { n = n & (n - 1); ++count; } return count 阅读全文
摘要:
power_two.cpp内容如下: #include <iostream> using namespace std; bool is_power_of_two(unsigned int n) { return (n && !(n & (n-1))); } int main(int argc, ch 阅读全文
摘要:
round_up.cpp内容如下: #include <iostream> using namespace std; const int kAlign = 8; // kAlign show be powers of 2, say 2, 4 ,8, 16, 32, ... const int kAl 阅读全文
摘要:
reg_test.cpp内容如下: #include <vector> #include <fmt/format.h> #include <console_color.h> #include <re2/re2.h> using namespace re2; using namespace std; 阅读全文
摘要:
~/.vimrc内容如下: set nocompatible filetype off set rtp+=~/.vim/bundle/Vundle.vim call vundle#begin() Plugin 'VundleVim/Vundle.vim' Plugin 'tpope/vim-fugi 阅读全文
摘要:
以管理员权限打开powershell 运行下述命令,需要用户确认的时候输入y按回车即可 Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [Sy 阅读全文
摘要:
在程序开发过程中,我们通常都会对多个文件中的某个字符串进行查找和替换,vim为我们提供了这个功能,首先我们需要安装nelstrom/vim-qargs插件,具体安装这里不做介绍,有时间的话会专门写一篇文章介绍如何安装vim插件以及vim的配置。这里假设你已经安装了上述插件。 我们的文件列表以及文件内 阅读全文
摘要:
我们在文本处理的时候,可能会遇到需要交换两个单词的情况,如果出现这两个单词的数量很少,可以手动修改,但是如果一个段落中出现次数很多,手动修改会很麻烦,我们可以使用vim的替换模式轻松完成这一个功能。 我们有下面的文件,为了演示,此文件只有一行,内容如下,我们要交换man和dog这两个单词: 首先,我 阅读全文
摘要:
我们在对一个文件进行处理时,有时候需要对数字进行操作,比如我们要对下面的文件中的数字改为原来的两倍: 我们希望得到如下的结果: 我们可以使用:s命令,对匹配到的模式(可以是任意的模式,此处为了演示效果,使用最简单的匹配模式)进行替换时执行算术运算,见下图: 当我们按下回车时,可以看到所有修改的地方都 阅读全文
摘要:
我们有一个csv文件,每个字段以逗号分隔,内容如下图所示: 现在我们对这些字段进行重新排列,希望得到下图的结果 我们可以使用:s命令进行实现,具体命令为:%s/\v**([,]),([^,]),([^,]*)$**/\3,\2,\1/g,加粗部分是匹配每个字段的正则表达式,效果如下图所示: 当我们按 阅读全文
摘要:
下载vim教程请点击vim下载,下载完成之后,将文件后缀名改为pdf即可 阅读全文
摘要:
vim中宏是功能很强大的一个工具,下面我们将尝试给文件添加行号,把我的文件line_num.txt(内容如下图所示) 最终转换成这个样子: 第0步:首先,我们使用vim的脚本,命名一个变量i,初始值为1,命令为***:let i = 1***,见下图: 第1步:确保我们处在文件的第一行,如果不是,请 阅读全文
摘要:
在vim中,使用标记mark可以进行快速的跳转,其按键为m[a-zA-Z],并且vim为我们提供了一些默认的位置标记,如下图所示: 阅读全文
摘要:
在vim,当我们选中了一个可视区域时,可以使用l,w,h, f...等命令对活动端进行移动,可以用按键o进行活动端的切换,如下图所示: 在可视模式下,按下o键,活动端会进行切换,如下图所示: 阅读全文
摘要:
在vim中,如果打开了没有写权限的文件,那么在修改后使用:w[rite]命令保存缓冲区至文件就会失败,下面我们尝试打开一个没有写权限的文件,如下图所示: 打开后,vim中会提示该文件是只读的(readonly),不可以修改: 如果我们对文件已经进行了修改(其实修改的是缓冲区,并没有写入文件),并使用 阅读全文
摘要:
即使缓冲区的路径中包含了不存在的目录,Vim 仍允许我们对该缓冲区进行编辑,只是在我们试图将缓冲区写入文件时,Vim 会报错。 接下来我们打开Vim,并使用:edit命令打开一个不存在的文件: 刚打开一个不存在的文件,可以按<C-g>(即Ctrl+g)查看缓冲区状态,会看到New file的字样,表 阅读全文
摘要:
在vim中,你可以使用<C-a>对所在行的数字加一,<C-x>对数字减一。(如果一行有多个数字,只对光标后的第一个数字进行加减处理) 但是vim默认使用的是8进制,所以对007加一数字会变成十进制的8,也就是010,如下图所示: 如果不想要这个结果,希望使用十进制,只需要命令模式下输入:set nr 阅读全文
摘要:
找到VS2017的相关目录,在我的机器上是C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\VC\vcprojectitems,如下图所示 打开hfile.h,发现其中的内容是: 修改为自己希望的新建 阅读全文