随笔分类 - C/C++开发
摘要:启动失败原因之一: 注意: 二进制程序名称与包名一致; 这就是crontab始终无法启动程序的原因; => 使 用 绝 对 路 径 运 行 脚 本 时 : 由 于 包 名 与 程 序 名 称 一 致 ,查找进程名时,注意使用grep -v 过滤包含进程名的字符串 如下 grep -v start.s
阅读全文
摘要:正常使用只删除一个迭代器时,返回下一个元素的迭代器; 此处主要用于记录map删除多个相同元素: erase删除两次同一个迭代器,会崩溃: 原因是第一次删除后,该迭代器为野指针,导致删除错误; 同理,其他容器若想多次erase元素时应该也是这个现象; 所以若不想每次都遍历map,最简单的方法是使用:
阅读全文
摘要:使用nohup ./bin/out & 后台运行程序时,发现cout可以输出到nohup.out文件里,但是printf不行; 联想是不是缓冲区未满不输出导致: 但我有加"\n"; ????这个原因就不清楚了; 然后尝试: fflush(stdout); 输出到nohup.out文件成功
阅读全文
摘要:1、 创建线程组: 就把该线程理解为代码中的线程即可,内部的sample具有顺序性。 循环次数: 是指使得该线程循环n次,该意思代表该线程从新建到关闭n次,每次都要从头开始重新执行线程组内部的内容,所以线程组里面的sample有顺序关系; 调度器: 线程持续时间,线程多久后启动; 线程个数: 配置该
阅读全文
摘要:1、clear,erase ,pop_back() 函数只删除对象,并没有释放vec中的内存,若对象是指针还需要delete;2、在erase,clear,pop_back()删除对象的后,size改变,capacity保持不变,所以push_back也是在capacity范围内进行插入新对象,当插
阅读全文
摘要:1、 tcp的三次握手和四次挥手仅仅代表tcp流的连接建立与结束,并不是区分流的概念。 即tcp的握手和挥手不论发生几次,都是同一条流;这种情况就是http协议中的端口复用现象。 2、 但如何在多个数据包里进行流的区分是通过五元组来区分: 源地址,源端口,目的地址,目的端口,传输层协议 ; 如果有一
阅读全文
摘要:本文以C/C++程序为例讲述了程序运行效率的10个简单方法,分享给大家供大家参考之用。具体分析如下: 对于每一个程序员来说,程序的运行效率都是一个值得重视,并为之付出努力的问题。但是程序性能的优化也是一门复杂的学问,需要很多的知识,然而并不是每个程序员都具备这样的知识,而且论述如何优化程序提高程序运
阅读全文
摘要:面试官:什么情况下用到try-catch?程序员:代码执行预料不到的情况,我会使用try-catch。面试官:什么是预料不到的情况呢?程序员:比如我要计算a除以b,但是b是变量,如果b等于0程序就会出错,所以我会将程序代码放在try中。面试官:还有其他情况会遇到try-catch吗?程序员:我会在上
阅读全文
摘要:1 错误描述: 测试程序时,发现报错: 动态库不是一个ELF文件, 此时确定LD_LIBRARY_PATH设置正确,然后执行ldconfig命令,发现如上图: 后来执行:file liblog4cpp.so.5 发现这是一个UTF_8文件;但实际上它应该是一个符号链接的文件 2 解决办法: 将其设置
阅读全文
摘要:原型: void *memset(void *s, int c, size_t n); 解释: memset :是 逐字节 拷贝,即n是指整个变量所占字节,在用于数组时一定要注意n不一定是 数组元素. memset :用来给某一块内存空间进行赋值的. 段错误之处: 对于所赋值的变量,如果不定义,如何
阅读全文
摘要:1 生命周期 如果仅仅是临时变量,并没有调用new来在堆上创建空间,那么注意 : 生命周期仅在该作用域中,即声明该临时变量的{}中; 2 使用(librdkafka C++回调使用) 在创建临时变量后,如果想使用该变量的指针,那么一定要注意其生命周期,当程序运行的时候出了这个作用域,此时该作用域栈销
阅读全文