自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 资源 (1)
  • 收藏
  • 关注

原创 测试栈空间的大小

比如局部变量是保存在栈空间中的,今天突然在想栈的上限是多大呢,什么时候才会栈溢出?ulimit 命令linux下使用ulimit 命令可以查看系统的很多上限值。ulimit -a 查看所有ulimit -s 查看栈空间的大小可以看到系统设置栈的上限是8M测试现在我们写个程序测试一下两种方法:1、第一种方法:最简单的是在函数或直接在main()函数里定义多个局部变量。局部变量一定要初始化,

2015-11-30 17:22:11 11174

原创 64位系统下gcc按照32位编译c程序

有时候我们需要测试c代码在32位环境下的运行结果,这时候就需要gcc按照32位来编译c了。1、 安装sudo apt-get install lib32readline-gplv2-dev2、编译。加 -m32 参数gcc -m32 hello.c

2015-11-30 15:59:07 7035 1

原创 进程间通信ipcs、ipcrm命令

创建了消息队列后,如果没有主动删除,或者程序不正常退出,那么消息队列会滞留在内核中,不断累加白白占用资源,直到操作系统重启。于是查询了,ipcs 和 ipcrm 命令,同时了解了其他用法。ipcs 命令查看消息队列、共享内存、信号量的相关信息。用法:ipcs -a (默认)输出全部信息,消息队列、共享内存段和信号量ipcs -m 只输出共享内存段信息ipcs -s 只输出信号量信息

2015-11-29 17:00:21 1092

原创 从汇编语言的角度看清数组名和指针变量的区别

当初学c语言总感觉数组名和指针之间有种说不清道不明的关系,两者很像,但是又有着解释不清的区别。数组名和指针的区别用常量初始化字符数组和指针变量

2015-11-27 14:30:18 3258

原创 学习红黑树

原文链接http://blog.csdn.net/lyh__521/article/details/49909953什么是红黑树?     其实,红黑树就是一棵二叉查找树。掌握红黑树的性质,用处,黑高度,时间复杂度,旋转操作,插入、删除

2015-11-18 17:13:28 1268

原创 BST二叉查找树

博客链接:http://blog.csdn.net/lyh__521/article/details/49811149介绍如图1就是一颗二叉排序树,也就是二叉查找树,又称二叉搜索树,简称BST 二叉排序树包含以下域: 成员 含义 left 指向左孩子 right 指向右孩子 key 关键字 parent 指向父结点特点前趋,后继,插入,删除

2015-11-13 01:44:26 1184

原创 由一个线程例子引发的思考

原文链接:http://blog.csdn.net/lyh__521/article/details/49759111  在谈这个例子之前先贴上进程与线程的内存结构,方便对线程有一个更深的理解。(如果觉得前面的介绍很烦,可以直接跳到最后看问题的分析和最终解决方法的代码)进程的内存结构下图是在Linux/x86-32中典型的进程内存结构,从图中的地址分布可以看出,内核态占1G空间,用户态占3G空间

2015-11-10 14:10:59 3691

原创 Linux信号介绍

原文链接:http://blog.csdn.net/lyh__521/article/details/49646927   信号(signal)是一种软件中断,它提供了一种处理异步事件的方法,也是进程间唯一的异步通信方式。信号来源硬件方式 用户在终端按下某些键。如 Ctrl+C硬件异常。如:除数为0、无效的存储访问等。这些事件由CPU检测到,然后通知给内核,由内核生成相应的信号,并把信号发送给

2015-11-04 23:22:32 934

原创 C++重载复合赋值运算符、算术运算符和关系运算符

原文链接:http://blog.csdn.net/lyh__521/article/details/49622601复合赋值运算符  形如‘*=’、‘+=’、‘/=’等这样的运算符称为复合赋值运算符,它们其实是算术运算和赋值运算的结合,即先执行算术运算,得到的值再赋值给左侧对象。重载复合赋值运算符:赋值运算符必须定义为类的成员,复合赋值运算符通常也应该定义为成员函数(但并不是必须这样)。复合赋

2015-11-03 21:35:54 7465

原创 重载输入输出运算符

原文链接:http://blog.csdn.net/lyh__521/article/details/49601489重载输入输出运算符 我们平时可以用流 std::cout<<str<<n ; std::cin>>str>>n ; 输出、输入字符串和整型等内置类型的值。但是对于我们自定义的类,比如 Student 类,却不能直接通过 cout<<Student 或 cin>>Student 这

2015-11-03 01:15:49 19637 1

原创 C++重载运算符函数需知

原文链接:http://blog.csdn.net/lyh__521/article/details/49592975基本概念 重载的运算符是具有特殊名字的函数: (1) 名字由关键字 operator 和其后要定义的运算符号(+、-、/、* 等组成); (2) 和其他的函数一样,也包含返回类型、参数列表以及函数体。对于二元运算符来说,左侧运算对象传递给第一个参数,而右侧运算符传递给

2015-11-02 22:13:46 1246

原创 free 引发的思考

原文链接:http://blog.csdn.net/lyh__521/article/details/49539011先看两个例子:(1)#include<string.h>#include<stdio.h>#include<stdlib.h>int main(){ char *p; char *q; p = (char*)malloc(20); // 给p开辟

2015-11-01 00:01:19 875

汇编器和链接器

用于linux下安装dosemu,下载解压后放在~/.dosemu/drivers/d/bin/目录下即可

2015-10-11

空空如也

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

TA关注的人

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