- 博客(43)
- 资源 (6)
- 收藏
- 关注
原创 认清int的取值范围到底是怎么来的
int的取值真正是怎么样的,刚好朋友问到了而且问的比较深,下面是我的一些解释:用计算器可以很明显看到int的取值范围int四个字节,八个半字节,32个bit 2147483647就是Int的最大值32个bit位,四位半个字节,八位一个字节;这是int的最大取值。如果给最大值 2147483647 + 1会是什么结果二进制加法,每个bit位置0往前进一位,最后结果...
2019-08-29 11:38:37 1241 1
原创 小Q的歌单(2018腾讯笔试题)
还在实习的我今天有同学问我了一道编程题说是2018年腾讯校招的笔试题(我只是个即将大四的菜逼-哈哈哈)小Q的歌单:小Q有x首长度为A的不同歌和y首长度为B的歌,现在小Q想用这些歌组成一个总长度正好为k的歌单,每首歌只能在歌单中出现一次,在不考虑歌单内歌曲的先后顺序的情况下问有多少种组合方式输入描述:每个输入包含一个测试用例每个测试用例的第一行包含一个整数,表示歌单的总长度(当然...
2018-07-26 17:21:49 1127 1
原创 RSA算法的简单理解与介绍
RSA算法即RSA加密算法,这是一种非对称加密算法。在公开密钥加密和电子商业中RSA被广泛使用。RSA是1977年由罗纳德·李维斯特(Ron Rivest)、阿迪·萨莫尔(Adi Shamir)和伦纳德·阿德曼(Leonard Adleman)一起提出的。RSA就是他们三人姓氏开头字母拼在一起组成的。1973年,在英国政府通讯总部工作的数学家克利福德·柯克斯(Clifford Cocks)在一...
2018-07-13 11:09:09 971
原创 linux下的一个目录扫描程序
程序的开始是一些必要的头文件,接下来是一个printdir()函数,它的作用是输出当前目录的内容,该程序采用递归遍历各级子目录,使用depth来控制缩排。下面就是程序的代码:#include<unistd.h>#include<stdio.h>#include<dirent.h>#include<string.h>#include<sys/...
2018-04-25 20:54:08 1280
原创 计算机网络
1、TCP相关面试题(1)介绍一下OSI七层模型和TCP五层模型?OSI七层模型从上到下依次为:应用层:为应用程序提供网络服务;表示层:数据格式转换、数据压缩和数据加密;会话层:建立、断开和维护通信链接;传输层:为上层协议提供端到端的可靠传输;网络层:寻址和路由;数据链路层:定义通过通信媒介互连的设备之间传输的规范;物理层:利用物理传输介质为数据链路层提供物理连接。TCP五层模型相比OSI七层模型,将OSI的应用层、表示层和会话层合为一层:应用层,其他不变。...
2021-10-28 18:57:46 336
原创 c++Static以及const类成员变量初始化
对于static const 类型的成员变量不管是旧的C++标准还是C++11都是支持在定义时初始化的。对于static 非const类型的成员变量C++03和C++11的标准都是不支持在定义时初始化的。对于const 非static类型的成员变量C++03要求必须在构造函数的初始化列表中来初始化,而C++11的标准支持这种写法,同时允许在定义时进行初始化操作。对于非static 非const成员变量,C++03标准不允许在成员变量定义时初始化,但是C++11标准允许在类的定义时对这些非静态变量进行初
2021-10-27 00:03:46 431
原创 TCP、UDP
1.网络模型网络模型应用层协议:http超文本传输协议、smtp邮件协议、FTP文本传输协议、SSH加密安全登录运输层:TCP、UDP网络层:IP、ICMP、ARP上图中有几个字段需要重点介绍下: 序号:seq 序号,占 32 位,用来标识从 TCP 源端向目的端发送的字节流,发起方发送数据时对此进行标记。 确认序号:ACK 序号,占 32 位,只有 ACK 标志位为1时,确认序号字段才有效,ack=seq+1。 标志位:共 6 个,即
2021-10-20 19:41:45 308
原创 刷题(2)统计字符数
描述写出一个程序,接受一个由字母、数字和空格组成的字符串,和一个字母,然后输出输入字符串中该字母的出现次数。不区分大小写,字符串长度小于500。输入描述:第一行输入一个由字母和数字以及空格组成的字符串,第二行输入一个字母。输出描述:输出输入字符串中含有该字符的个数。示例1输入:ABCabcA复制输出:2/*toupper将字母转换成大写*//*tolower将大写字母转换成大写*/#include<iostream>#includ
2021-06-27 14:29:41 238
原创 刷题(1)16进制转换
描述写出一个程序,接受一个十六进制的数,输出该数值的十进制表示。输入描述:输入一个十六进制的数值字符串。注意:一个用例会同时有多组输入数据,请参考帖子https://www.nowcoder.com/discuss/276处理多组输入的问题。输出描述:输出该数值的十进制字符串。不同组的测试用例用\n隔开。示例1输入:0xA0xAA复制输出:10170#include<iostream>#include<math.h>us...
2021-06-26 00:58:15 383
原创 const *int、int const *、int *const的区别
#include<iostream>using namespace std;static int test = 1;const int iNum = 1;class Test{public: Test(); ~Test(); int const *test_num; const int *test_num2; //int *const test_num3; };Test::Test(){ int a = 2; int bv = 9; test_num .
2021-05-26 23:54:48 516
原创 C++简单的子类继承父类访问父类的成员函数和成员变量
#include<iostream> using namespace std; class A { public: A() { p = 1; } void Print(int &a) { ++a; cout<<"a == "<<a<<endl; } ~A() { p = 0; } int p; }; class B:public A ..
2020-12-25 00:03:17 5356
原创 xdg-open
xdg-open是linux下可以打开一个文件或链接打开链接:QProcess::startDetached("xdg-open https://www.baidu.com");打开文件:QProcess::startDetached("xdg-open filename");linux终端:xdg-open filename
2020-05-09 11:00:02 2010
原创 vim精准匹配,以及vim配置
例子:/\<hello\> 精准匹配,之查找hello, \<表示开头 \>表示结尾,因此/\<hello\>表示匹配以hello开头和hello结尾的单词。vim配置:vim ~/.vimrc文件"让vimrc配置变更立即生效autocmd BufWritePost $MYVIMRC source $MYVIMRCset numbersyntax onset autoindentset smartindentset backgrou...
2020-05-09 10:48:57 533
原创 git的使用
git作为分布式的版本控制工具,而svn是集中式的版本控制工具。svn的缺点:如果服务器宕机,那么在此阶段是不能提交和拉代码的。如果服务器的磁盘坏了,并且没有备份的话,后果可想而知。虽然可以再将本地完整的代码重新上传并且部署到服务器上,但是将会丢失所有的版本和日志信息。git的缺点:复杂,绕,当然因为以前我用的是svn,git用的不熟,对于刚用git来说git就显得有点复杂(个人观点),特...
2020-04-10 15:56:26 129 1
原创 机器人走方格I
1.递归public int countWays(int x, int y) {{if(x == 1 || y == 1)return 1;return countWays(x - 1, y) + countWays(x, y - 1);}2.非递归#include<iostream>using namespace std;int count...
2020-03-26 23:51:09 104
原创 c++设计模式
1.单例模式将类的构造函数声明为私有的,保证其他处的代码无法通过调用该类的构造方法来实例化对象,只有通过该类的静态方法来得到该类的唯一实例;在类中提供一个静态方法,调用该方法就类进行实例化。//单例模式#include<assert.h>#include<string.h>class one{ public: static cl...
2020-03-24 23:48:53 109
原创 c++多线程同步
在未加锁的情况下#include<iostream>#include<pthread.h>#include<stdlib.h>#include<unistd.h>using namespace std;pthread_mutex_t mutex;int ticket_num = 20;void *fun1(void *args...
2020-03-23 17:38:35 474 1
原创 判断大小端
举个列子,比如int a = 0x12345678,下图分别对应大小端不同的计算机的存储。方法1:#include<stdio.h>int main(){ int a = 0x12345678; char *p = (char *)&a; if (*p == 0x78) { printf("小端字节序...
2020-03-23 00:06:57 736
原创 笔记笔记
未初始化的全局变量存储在BBS(未初始化全局变量存储区);初始化的全局变量存储在全局变量存储区(data);局部变量存储在栈new malloc开辟的存储在堆代码段:存储执行代码结构体为什么要以最大的进行对齐:因为CPU读取内存是一块一块进行读取的,这样做的目的是牺牲空间换区效率A主机来进行ping B主机的ip(1) A主机构建一个ICMP格式的数据包;...
2020-03-19 22:39:09 119
原创 Linux下的printf,与我们想象的不一样的printf
#include<stdio.h>int main(){ int a = 5; printf("%d: %d: %d: %d: %d",a++, a++, ++a, a++, ++a); return 0;}运行结果:9: 8: 10:...
2020-03-17 21:58:10 358
原创 c++八进制、10进制、16进制之间的转换
十进制转换八进制、十六进制、以及二进制c++中可以利用 cin>>hex>>a输入十六进制 cin>>oct>>a输入八进制利用cout<<hex<<a输出16进制 cout<<oct<<a输出八进制 cout<<dec<<a输出十进制#include<i...
2020-03-15 21:51:57 1094
原创 linux下统计一个文件关键字出现的个数,文件的行数
wc使用man wc-c :统计字节数量-n 统计char数量-l 统计行数-L 统计最长行的长度-w 统计关键字数量xc@xc-machine:~/work$ cat 1.txt123 123 1232313 44141313131 4141123 1231.例如统计1.txt文件行数wc -lxc@xc-machine:~/work$...
2020-03-14 23:22:45 5310 1
原创 JAVA语言的优势
一、面向对象java是典型的面向对象编程语言,具体体现在三个方面封装、继承和多态封装:把类得内部与外界隔离起来,防止该类的代码被外界随机访问,如果要访问就必须有特定的方式。他带来的好处就是提高了java的安全性和程序的可维护性以及代码的复用性。继承:通俗来说就是儿子继承父亲,使子类具有父类的行为。多态:主要体现在重载和重写二、一次编译,处处运行无论是windows系统还是Linux系统...
2020-02-29 18:35:44 136
原创 关于bit位的操作
#include<iostream>#include<stdint.h>#include<stdlib.h>#include<assert.h>using namespace std;class ActivityUtils{ public: static uint32_t rand_bit_off_index(...
2020-02-24 16:28:45 285
原创 修脏数据必备
找出A列与B列的交集公式, VLOOKUP(A2,B:B,1,0)IF(COUNTIF(E:E,D2)=0,D2"")找出D中有E中没有的数据
2020-02-20 17:42:13 88
原创 将数据库查询的结果重定向到新的文件的shell脚本
脚本文件:sele.shmysql -h主机IP-A -P 端口-u 用户名-p密码-e "select id,petid,catch_time from database.tablewhere id=11" > 2222为重定向的文件名使用sort排序例如:119120 211 3434119120 313 3131119120 312...
2020-02-12 17:01:41 531
原创 error: call of overloaded ‘swap(int&, int&)’ is ambiguous
代码:#include<iostream> using namespace std; template <class T> void swap(T&a, T&b) { T tmp = a; a = b; b = tmp; } int main(){ int a ...
2019-10-23 14:50:54 1788
转载 数据库事务模拟银行转账的场景(成功和失败)
转载:https://www.cnblogs.com/xdp-gacl/p/3984001.html一、事务的概念 事务指逻辑上的一组操作,组成这组操作的各个单元,要不全部成功,要不全部不成功。 例如:A——B转帐,对应于如下两条sql语句 update from account set money=money+100 where name='B'; update f...
2019-10-18 11:52:58 2064
原创 upper_bound和lower_bound的使用
upper_bound:main.cpp: #include <iostream> #include <algorithm> using namespace std; int main() { int arr[5] = {10, 20, 30, 40, 50}; int tmp = upper_bound(...
2019-10-18 11:35:33 135
转载 lsof命令
文章来源https://www.cnblogs.com/sparkbj/p/7161669.html#42977911.列出所有打开的文件:lsof备注: 如果不加任何参数,就会打开所有被打开的文件,建议加上一下参数来具体定位2. 查看谁正在使用某个文件lsof /filepath/file3.递归查看某个目录的文件信息lsof +D /filepath/filep...
2019-08-30 16:30:11 80
原创 __attribute__使用,一个可以按照自己的内存对齐方式
该代码时基于linux下的#include<stdio.h> typedef struct attr { char date_1;...
2019-08-30 12:00:39 176
原创 linux下 svn使用记录 冲突解决方法
svn常用命令笔记:最重要的是 解决冲突,这是最最最常见的问题。svn log filename显示一个文件的所有的提交记录包括 版本号 作者 日期svn info filename查看文件详细信息包括文件所在的 URL 版本号 作者 提交日期svn ls查看版本库的文件和目录svn resolved解决冲突svn cat可以查找指定版本,比如sv...
2019-08-28 17:04:52 637
原创 vim编辑器实现函数补全
没有vim的就先自行安装吧!!步骤1.安装补全神器omnicppcomplete,Vim中C/C++代码补全插件,基于ctags所生成的标签库。http://www.vim.org/scripts/download_script.php?src_id=7722下载好进来 解压到~/.vim目录下,如果没有这个目录自行创建一个目录即可;注:如果向给另一个终端发送你解压的文件可参考ht...
2019-04-24 16:34:56 1067
原创 vim技巧总结
在非编辑模式下:% 括号匹配,跳转至相匹配的括号[[ 跳转至上一个函数]] 跳转至下一个函数{ 跳转到上一段开头} 跳转到下一段开头gd 跳转至局部变量定义的地方数字 0 跳转到行首$ 跳转至行尾部建议安装ctages可以从函数调用处 跳转到函数定义处...
2019-04-24 16:25:16 117
原创 redis的安装和简单的使用
redis是一个key-value存储系统。它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。支持的语言:许多语言都包含Redis支持,包括:Com...
2019-04-03 14:59:07 162
原创 Linux下的scp命令使用
scp命令用于不同Linux服务器之间的复制方法如下:scp -r /filename 127.1.1.0:/filename-r选项是复制目录时用的,如果只是一个文件去掉-r选项即可,filename代表的是你要复制的文件的路径,127.1.1.0代表的是另一台机器的IP地址,同样filename代表的是你要复制到的路径比如:scp /user/bin/file 127.1.1.0...
2019-03-28 16:34:09 1055
转载 unity3D 坦克大战
1.新建工程,导入资源,新建Scenes文件夹,保存该场景进该文件夹2.删除场景中的默认灯光2.1 再把Prefab里的LevelArt预设场景拖到Hierarchy中2.2选择window->lighting 打开光照窗口,取消勾选下面的Auto(自动渲染),取消勾选BakeGI,把RealtimeResoulution改为0.5,在把上面的AmbientSourc...
2019-03-13 18:55:10 1056
原创 c语言二进制转换八进制
二进制转换为八进制把要转换的二进制数按照3位一组从右边往左边分组。不足3位的在左边补上0111001111001=001 110 001 111 001#include<stdio.h>#define MAX 1024 /*****************往左补0 n需要补0的个数*******************/int * Move(int *Elem,...
2018-12-30 15:46:03 10796 1
原创 秋招面试总结绿盟、淘米、平安科技等(c++开发工程师)
先简单的进行一个自我介绍吧:学历:普通一本 专业:网络工程 注:CET4未通过(很难受),BATJ美团,滴滴一线都没投,感觉实力不够 下面的一些知识点我面试的公司基本都有问到,大神的话请绕道!!!绿盟c++开发:我第一家面的公司,我笔试完后绿盟发邮件和短信通知我去第二天早上9:00去面试,面试官拿着简历让我进行自我介绍(自我介绍一般三分钟左右吧让面试官看完你的简历),首先对我...
2018-11-06 19:57:14 848
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人