- 博客(65)
- 资源 (52)
- 收藏
- 关注
原创 linux命令技巧归纳3
vi filename+行号 定位到具体的位置vi 里面 ,输入问号+字符串 搜索字符串vi里面打开默认是第一屏幕 所以需要shift+g定位到末尾屏幕按2个g定位到首屏ctrl+b 切换到上一屏ctrl+f 切换到下一屏tail -f RunLog可以实时的得到新追加到文件中的信息,常用来跟踪日志文件vi查找字符串输入/ 或者?
2011-12-31 15:03:38 692
转载 C 箴言:多态基类中将析构函数声明为虚拟
转自:http://www.west263.com/info/html/chengxusheji/C-C--/20080224/12883.html有很多方法能够跟踪时间的轨迹,所以有必要建立一个 TimeKeeper 基类,并为不同的计时方法建立派生类: class TimeKeeper { public: TimeKeeper(); ~TimeKee
2011-12-31 14:58:47 666
原创 c++基类不为虚析构函数的一个风险
#include using namespace std;class Point {public: //如果这里不写成虚拟的析构函数,子类就会有内存泄漏 //virtual ~point() //{ // cout<<"point out"<<endl; //} ~Point() { cout<<"point out"<<endl; }};clas
2011-12-31 14:57:42 676
转载 gdb中汇编调试
原标题名《gdb相关(gdb十分钟教程)》本文写给主要工作在Windows操作系统下而又需要开发一些跨平台软件的程序员朋友,以及程序爱好者。GDB是一个由GNU开源组织发布的、UNIX/LINUX操作系统下的、基于命令行的、功能强大的程序调试工具。GDB中的命令固然很多,但我们只需掌握其中十个左右的命令,就大致可以完成日常的基本的程序调试工作。命令解释示例
2011-12-30 23:20:00 875
转载 Linux平台可以用gdb进行反汇编和调试。
转载自:http://www.cppblog.com/liu1061/articles/53762.html 如果在Linux平台可以用gdb进行反汇编和调试。(转)2. 最简C代码分析 为简化问题,来分析一下最简的c代码生成的汇编代码: # vi test1.c int main() { return 0;
2011-12-30 23:14:42 795
转载 Gdb+core调试技术
转载自:http://zhwen.org/xlog/?p=453 做c方面的开发,免不了要是用gdb来调试程序,最近也是在公司做的时候时常需要使用gdb来分析程序,使用最多的当属使用core来查看程序运行的crash原因。在linux中应用程序运行奔溃之后一般会产生core文件,core文件是core dump来产生,core dump又叫核心转储, 当程序运行过程中发生异常
2011-12-30 23:02:22 1560
转载 tcpdump抓包规则常用命令
转载自:http://blog.sina.com.cn/s/blog_4a071ed80100sv13.html 下面的例子全是以抓取eth0接口为例,如果不加”-i eth0”是表示抓取所有的接口包括lo。首先安装tcpdump包:yum install -y tcpdump 1、抓取包含172.16.1.122的数据包# tcpdump -i eth0 -vnn h
2011-12-30 22:34:50 40000
转载 Linux常用的网络命令
转载自:http://www.cnblogs.com/hnrainll/archive/2011/10/12/2208436.html网络参数设置命令 所有时刻如果你想要做好自己的网络参数设置,包括IP参数、路由参数和无线网络等,就得要了解下面这些相关的命令才行。其中Route及ip这两条命令是比较重要的。当然,比较早期的用法,我们都是使用ifconfig的。? ifconfig:
2011-12-30 22:33:28 1307
原创 c++ operator[]的例子
#include #include #include using namespace std;class X{public: int operator[](int key) { switch(key) { case 1: return 10; break; case 2: return 20; break; defa
2011-12-30 16:50:16 1048
原创 C++ map容器的2种初始化方法
#include #include #include using namespace std;int main(){ map map1; map1[string("tttt")] = 1; map1[string("ggg")] = 2; map1.insert(pair("niubi", 3)); map::iterator it = map1.begin();
2011-12-30 16:43:43 53064 2
转载 linux读写大文件
转载自:http://hi.baidu.com/aiscanf/blog/item/f8f272f57999712bbd310936.htmllinux环境下操作特大文件 -D_FILE_OFFSET_BITS=64今天特地仔细研究了一下linux环境下文件操作的一些细节,得到以下几个结论,如有不当之处,欢迎批评指正:)1:创建单个文件的的最大大
2011-12-30 13:51:43 4175
原创 c++多次delete的后果及正确处理方法
#include using namespace std;class X{public: int a;};int main(void){ X *x = new X; cout<<x<<endl; delete x; cout<<x<<endl; //多次delete 会爆异常 //delete x; system("pause"); return 0;}
2011-12-30 11:43:02 4322 1
原创 C++类静态变量使用注意的问题
#include using namespace std;class X{public: static int a; const static int c =10;private: static int b ;public: int get() { return b; }};//静态变量可以在外部定义和赋值,即便它是private的//int
2011-12-30 10:13:34 1544
原创 C++单例模型的例子
#include #include using namespace std;class CGlobalInstance{ private: CGlobalInstance(); virtual ~CGlobalInstance(); static CGlobalInstance* m_this; public: static C
2011-12-30 10:01:57 661
原创 云计算架构的知识
联机事务处理OLTP(On-line Transaction Processing)联机分析处理OLAP(On-line Analytical Processing)hadoopbigtablenosql同构系统: 一组master-slave存放有相同的数据,单点故障只能从所在机器组的节点恢复. 1-1备份,多1倍的机子。异构系统: 减少成本,快速增长
2011-12-23 15:52:00 1008
原创 LINUX 高级IO操作
LINUX 高级IO操作一 知识点非常重要二 非阻塞的IO 系统调用: 低速系统调用,其他系统调用 低速系统调用的类别: 1)读网络设备,终端,管道等,暂时没有数据输入,则阻塞读操作 2)同上的写操作,但不能接收时,也阻塞写操作 3)等待某种条件的读写操作 4)加锁的文件的读写操作 5)某些ioctl操作 6)进程
2011-12-23 15:49:36 1889
原创 获得linux线程栈的大小
获得linux线程栈的大小结果是:10485760 B 换算下 恰哈是10MB编译命令 gcc -lpthread p_stack.c代码:#include #include #include #include void* thread(){ pthread_attr_t pattr; size_t size = 0; printf("default s
2011-12-23 15:49:08 4684 1
原创 linux 获取远程系统时间的例子
linux进程通信 获取远程系统时间的例子server.c--------------------#include #include #include #include #include #include #include #include #include #include #include#define LOCAL_IP "192.168.59.194"
2011-12-23 15:48:46 2378
原创 vim快速格式化和注释代码
gg=Ggg —— 到达文件最开始 = —— 要求缩进 G —— 直到文件尾 :help gg :help = :help G :help 'formatprg' :help C-indenting指令格式 :起始行,终止行s/要替换的字符/替换为字符/g 如, C++源文件中
2011-12-23 15:48:07 1105
原创 linux 进程间通信的几种方式
一 管道技术 1)概念 历史上是半双工的,只能单向流动,目前有系统提供全双工管道 linux上全双工管道由unix域套接字实现 只能在具有公共祖先的进程间使用 2)shell 中的命令序列 中 标准输入输出的重定向就是通过管道连接的 3)创建管道 pipe(int fields[2]) 返回: fields[0]为读描述符,f
2011-12-23 15:47:40 811
原创 LINUX 线程基础, 线程同步,线程控制
一 线程基础 1)线程全称控制线程 2)多线程的优势: a) 比进程方便,可以共享相同的内存空间及文件描述符 b) 可以用于多个任务,而这些任务如果用单进程来实现是串行, 在多线程里面由于CPU的调度可以实现穿插执行 c) 用于交互程序,将用户输入输出与其他部分分开,优化性能 3)如何知道系统是否多线程pth
2011-12-23 15:47:08 847
原创 LINUX 守护进程
一 概念 英文名字daemon,又名精灵进程,常在系统开机的时候加载,系统关闭的时候才终止.在windows上就是services 二 ps -axj 显示进程 -a 由其他用户拥有的进程状态 -x 显示没有控制终端的进程状态 -j 显示与作业有关的信息 三 系统daemon进程 pid 为0的进程为内核进程 pid 为
2011-12-23 15:46:40 697
原创 c c++内存操作
Cvoid * malloc ( size_t size );Allocate memory blockAllocates a block of size bytes of memory, returning a pointer to the beginning of the block.The content of the newly allocated block of
2011-12-23 15:45:44 612
原创 LINUX标准io默认都是阻塞的
#include #include #include int main(){ int s_in, s_out, s_err; s_in= fcntl(STDIN_FILENO, F_GETFL); s_out= fcntl(STDOUT_FILENO, F_GETFL); s_err= fcntl(STDERR_FILENO, F_GETFL); if (O_NONBL
2011-12-21 11:31:53 667
转载 网友推荐的Symbian开发入门级教程
Symbian入门篇 (已有2792人下载)Symbian入门篇资料仅供刚接触Symbian的人参考[下载]:http://download.csdn.net/source/217132Symbian OS Workshop(中文版)Symbian OS Workshop(中文版)介绍了Symbian平台下软件开发[下载]:http://download.c
2011-12-20 11:11:50 616
原创 LINUX planner工具
LINUX planner工具LINUX planner工具 可以非常容易的制作出项目管理进度图可以以这样的方式管理文档资料等以迭代计划的开发就按迭代计划,每个迭代计划一般是一个月就是一个文件夹,文件夹里面分类保存文档:如需求,项目管理计划,设计,代码,版本,等再建一个文档日志,写上文档记录这样每个迭代计划分开,以后查找文档又可以通过日志快速
2011-12-20 08:56:34 1547
原创 kill与kill -9与killall
很多时候,会有人建议你,如果kill杀不掉一个进程,就用kill -9. 为什么?kill是Linux下常见的命令。其man手册的功能定义如下:kill – send a signal to a process明朗了,其实kill就是给某个进程id发送了一个信号。默认发送的信号是SIGTERM,而kill -9发送的信号是SIGKILL,即exit。exit信号不会被系统阻塞,所以ki
2011-12-18 09:20:40 7356 1
原创 Fedora10 允许root登录及设置密码
1.为root设置密码装好fedora10后,root密码这个时候空的。需要登录到普通帐号。然后输入passwd root 按照提示输入新密码即可。2.允许root登录 su root 输入root密码 然后vi /etc/pam.d/gdm 按a 在#auth required pam_succeed_if.so user != ro
2011-12-18 09:20:10 2581
转载 linux makefile写法的学习
本文转载自CSDN博客,http://blog.csdn.net/Sunboy_2050/archive/2010/07/06/5717253.aspx1.无makefile的编译过程 gcc -c file.c -o file.o gcc -o file file.o file2.o2.初级makefile的写法 Make命令会默认调用makefile文件
2011-12-17 17:27:46 1657
原创 C数据类型对齐规则包含位域
C数据类型对齐规则包含位域相关的操作:#pragma pack(n) 设置为n字节对齐#pragma pack(push) 保存当前的对齐字节数#pragma pack(pop) 还原默认对齐字节数vc默认8字节对齐1.对于结构体的各个成员,第一个成员位于偏移为0的位置2.对于结构体的以后的每个成员的开始偏移位置必须是MIN(#pragma pack()指定的数
2011-12-16 17:31:02 864
原创 linux2次锁互斥变量死锁的例子
linux2次锁互斥变量死锁的例子-------------------------------------------------- 1 #include 2 #include 3 #include 4 5 6 pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER; 7 8 vo
2011-12-15 14:14:01 1922 1
转载 系统架构学习知识点
系统架构学习知识点转载自 : http://sd.csdn.net/a/20110720/301922.html3.系统架构负载均衡。HASH式的,纯动态式的。(可以到Google学术里搜一些关于负载均衡的文章读读)多层分布式系统–客户端服务结点层、计算结点层、数据cache层,数据层。J2EE是经典的多层结构。CDN系统–就近访问,内容边缘化。P2P式
2011-12-15 11:38:10 955
转载 undefined reference to `pthread_create'
转载自 http://www.cnblogs.com/feefk/archive/2009/12/09/1620557.html刚刚学习linux,今天在试一个线程例子时,结果出现如下错误:pthread.c:(.text+0x58): undefined reference to `pthread_create'pthread.c:(.text+0xab): undefine
2011-12-14 16:02:25 590
原创 linux打印出信号值对应的字符串值
linux打印出信号值对应的字符串值 1 #include 2 #include 3 4 5 int main() 6 { 7 8 printf("%s\n", strsignal(SIGUSR1)); //函数 9 printf("%s\n", sys_siglist[SIGUSR1]); //数组 10 ret
2011-12-14 14:58:55 1456
原创 关于c里面的setjmp和longjmp
关于c里面的setjmp和longjmp本来goto 不能跳转到函数外部,于是提出了这个jmp跳转,可以从嵌套很深的地方,跳转到setjmp定义的地方。longjmp会跳转到setjmp定义的地方,而不是调用的地方。 所以如果把setjmp代码放进main函数里面会造成死循环(因为后面func1又在调用longjmp)如果setjmp代码和longjmp在
2011-12-14 09:57:24 554
原创 函数指针在linux和win上的一个区别
函数指针在linux和win上的一个区别linux编译器 gccwin编译器 vc2005#include #include void (*f)(int);void (*g())(int){ return f;}#define NO_INT (void (*)())0#define HAS_INT (void (*)(int))0v
2011-12-12 09:47:31 559
原创 linux进程通信的几种方式
一 管道 1有名管道 popen函数建立 所有进程按权限取得管道文件的访问权限 一直存在文件系统里面,有实际的目录地址,能被所有进程访问. 2无名管道 pipe函数建立 只有相关的进程,及创建管道(pipe)的进程及其子进程可以访问 偏移信息没有像文件那样存在,所以进程不能lseek管道,即不能随机读管道 所有进程结束使用管道,内核
2011-12-10 17:11:28 519
转载 C/C++移位运算符出界后的计算规则,需要懂汇编啊!
学编程离不开汇编的帮助转载自it功力: 以前看到C++标准上说,移位运算符(>)出界时的行为并不确定:The behavior is undefined if the right operand is negative, or greater than or equal to the length in bits of the promoted left operand.我当时也没
2011-12-10 17:06:25 889
原创 VS在函数返回的时候检测内存泄漏
#include #include #include /************************************************************************//* 实现代码在dbgheap.c *//*****
2011-12-09 17:14:55 600
SCSI Primary Commands - 4 (SPC-4).pdf
2020-08-31
c++高级程序员需要掌握的
2011-12-17
linux操作系统学习4合1
2011-12-03
C++ SQLite vs2010
2011-11-03
unix操作系统设计.pdf
2011-10-20
vs2005重置命令大全,修改了vs的可以参考
2011-10-18
Dwarf3.pdf
2011-10-16
symbian os c++ 应用程序开发教程 完整版 pdf
2011-09-23
chartdirector_csharp
2011-09-16
图解所有UML对象关系 c++反汇编 天数夜读反汇编
2011-08-31
mf2_programming
2011-07-13
mf_programming
2011-07-13
SVN实用技能及冲突管理word rar
2011-06-21
设计模式C++ pdf(不到2M)
2011-06-21
深入探索c++对象模型 设计模式c++ pdf
2011-06-06
Pclint 9程序,安装说明,在vs2005配置详解
2011-05-25
用 GTest 来测试MFC 程序 TDD开发
2011-05-24
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人