自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Quartz's Blog

Change Impossible into I'm possible.

  • 博客(21)
  • 资源 (2)
  • 收藏
  • 关注

转载 总线错误与段错误

前段买了本《C专家编程》确实不错,特别是对内存思考这一章节,(O(∩_∩)O~目前我也只看到这一章节),其中讲到了总线错误和段错误: bus error(core dumped) 总线错误(信息已经转储) segmetation fault(core dumped)段错误(信息已经转储) 这种错误相信只要你在unix用c,c++这两种错误是常见又是很头疼的错误,目前我也遇到段错误的程序,至今未

2017-02-19 15:48:18 2003

转载 一篇特别长的总结(C专家编程)

博客链接: http://codeshold.me/2017/02/expert_c_programming.html读一本书必输出一篇笔记或者总结!!! 《C专家编程》这本书很早看完了,但整理笔记却断断续续的花了三天时间,这从侧面更说明了这本书的经典了(尽管不到300页)! 至此C经典著作《C Traps and Pitfalls》《Expert C Programming》

2017-02-19 14:52:44 1421

转载 C++中 引用&与取地址&的区别

一个是用来传值的 一个是用来获取首地址的&(引用)==>出现在变量声明语句中位于变量左边时,表示声明的是引用.例如: int &rf; // 声明一个int型的引用rf. &(取地址运算符)==>在给变量赋初值时出现在等号右边或在执行语句中作为一元运算符出现时 表示取对象的地址.在C++中,既有引用又有取地址,好多人对引用和取地址不是很清楚,因此也无法区分。其

2017-02-19 14:46:50 634

原创 int a = 0 与 int a(0) int a(b)

偶然看书发现了int a(0);这种写法,当时感觉很奇怪,于是网上搜索一番,发现了其中原因 C++ 延续了C 的编程思想,所以说有两套编程体系,面向对象及面向过程int a = 0; 这种写法,就是经典的C的写法,初始化a为零int a(0); 这个是使用了构造函数写法的初始化,相当于定义一个int的对象,其初始化的传给构造函数的值为零。所以说 int a = 1; 和int a(1);

2017-02-10 23:08:45 10906 2

转载 自旋锁和互斥锁区别

http://blog.csdn.net/kyokowl/article/details/6294341POSIX threads(简称Pthreads)是在多核平台上进行并行编程的一套常用的API。线程同步(Thread Synchronization)是并行编程中非常重要的通讯手段,其中最典型的应用就是用Pthreads提供的锁机制(lock)来对多个线程之间共 享的临界区(Critical S

2017-02-10 22:31:38 302

转载 Qt程序打包发布方法(使用官方提供的windeployqt工具)

Qt程序打包发布方法(使用官方提供的windeployqt工具)转自:http://tieba.baidu.com/p/3730103947?qq-pf-to=pcqq.groupQt 官方开发环境使用的动态链接库方式,在发布生成的exe程序时,需要复制一大堆 dll,如果自己去复制dll,很可能丢三落四,导致exe在别的电脑里无法正常运行。因此 Qt 官方开发环境里自带了一个工具:windeplo

2017-02-10 22:20:37 636

转载 将 Win32 程序移植到 Linux

对于这个问题,网上已经有很多资料给予了介绍,但是相比于这些信息,本文立足于个人的实践,将内容具体到开发环境和源代码,我觉得还是有很多值得总结和借鉴的。        首先声明开发环境。Win32程序的开发环境是VS.NET 2008,编程语言是C;Linux使用的RHEL 5.4,GCC的版本是4.1.2,编程语言也是C。然后依次说明移植的对象:数据类型/字符串处理/系统调

2017-02-08 23:44:37 400

原创 网络编程--客户端返回connect refused 和 no route to host

刚刚接触了网络编程,摸索着调通了程序, 经常遇到connect函数抛出的 connect refused 和 no route to host这两个问题 总结了一下,connect refused 主要是由于所连接的sockaddr_in配置不正确导致的,也就是说,ip填错了或者端口填错了,导致的错误no route to host 这个当时如果ip填回环的话(127.0.0.1)没有问题

2017-02-05 00:02:52 20965

原创 网络编程--Address already in use 问题

初学socket编程,好容易调好一个双向tcp的简单通信,一直有些不舒服的是,当程序结束后,再次运行时 总会perror抛出Address already in use的问题网上找了找资料, bind 普遍遭遇的问题是试图绑定一个已经在使用的端口。该陷阱是也许没有活动的套接字存在,但仍然禁止绑定端口(bind 返回 EADDRINUSE),它由 TCP 套接字状态 TIME_WAIT 引起。该

2017-02-04 23:52:54 582

转载 学会用core dump调试程序错误

最来在项目中遇到大型程序出现SIGSEGV ,一直不知道用core dump工具来调试程序,花了近一周的时间,才定位问题,老大很生气,后果很严重,呵呵,事后仔细学习了这块的知识,了解一点core dump的知识。      在使用半导体作为内存的材料前,人类是利用线圈当作内存的材料(发明者为王安),线圈就叫作core ,用线圈做的内存就叫作“corememory”。(线圈的单词应该是coil,

2017-02-04 23:43:22 256

转载 linux下core文件调试方法

在程序不寻常退出时,内核会在当前工作目录下生成一个core文件(是一个内存映像,同时加上调试信息)。使用gdb来查看core文件,可以指示出导致程序出错的代码所在文件和行数。1.core文件的生成开关和大小限制 (1)使用ulimit -c命令可查看core文件的生成开关。若结果为0,则表示关闭了此功能,不会生成core文件。 (2)使用ulimit -c filesize命令,可以限

2017-02-04 23:29:19 242

转载 addr2line探秘(没有core怎么办)

转自:http://www.cnblogs.com/li-hao/archive/2013/04/03/2997807.html在Linux下写C/C++程序的程序员,时常与Core Dump相见。在内存越界访问,收到不能处理的信号,除零等错误出现时,我们精心或不精心写就的程序就直接一命呜呼了,Core Dump是Linux仁慈地留下的程序的尸体,帮助程序员们解决了一个又一个问题。

2017-02-04 23:27:34 351

转载 linux下产生core文件以及不产生core文件的条件

原文:http://team.eyou.com/?p=27Linux下,产生core文件,和不产生core文件的条件:当我们的程序崩溃时,内核有可能把该程序当前内存映射到core文件里,方便程序员找到程序出现问题的地方。最常出现的,几乎所有C程序员都出现过的错误就是“段错误”了。也是最难查出问题原因的一个错误。下面我们就针对“段错误”来分析core文件的产生、以及我们如

2017-02-04 23:13:52 26142 1

转载 堆和栈的区别(转过无数次的文章)

一、预备知识—程序的内存分配    一个由C/C++编译的程序占用的内存分为以下几个部分    1、栈区(stack)—   由编译器自动分配释放   ,存放函数的参数值,局部变量的值等。其    操作方式类似于数据结构中的栈。    2、堆区(heap)   —   一般由程序员分配释放,   若程序员不释放,程序结束时可能由OS回    收   。注意它与数据结构中的堆是两

2017-02-04 18:47:35 300

转载 线程基本编程——线程函数大全

索引:1.创建线程pthread_create2.等待线程结束pthread_join3.分离线程pthread_detach4.创建线程键pthread_key_create5.删除线程键pthread_key_delete6.设置线程数据pthread_setspecific7.获取线程数据pthread_getspecific8.获取线程标示符pthread_

2017-02-04 18:42:28 291

原创 网络编程--sockaddr 与 sockaddr_in

From: http://www.it165.NET/pro/html/201211/4066.html在初学的时候对二者甚是迷茫一会就晕了 在这里总结一句话: struct sockaddr 这个结构体是linux的网络编程接口中用来表示IP地址的标准结构体,bind、connect等函数中都需要这个结构体,这个结构体是兼容IPV4和IPV6的。在实际编程中这个结构体会

2017-02-04 18:00:12 3965

转载 网络编程--基础篇

#Socket简介是一个编程接口是一种特殊的文件描述符(everything in Unix is a file)并不仅限于TCPIP协议面向连接(Transmission Control Protocol - TCPIP)无连接(User Datagram Protocol-UDP 和 Inter-Network Packet Exchange-IPX)#Socket类型

2017-02-04 16:32:24 335

原创 进程间通信--信号(SIG)

信号是内容受限的一种异步通信机制信号的目的:用来进程间的通信信号本质上是int型数字编号(事先定义好的);所以说是内容受限的通信机制信号是异步的(可以类比于硬件中断)常见信号介绍SIGINT 2 Ctrl+C时OS送给前台进程组中每个进程SIGABRT 6 调用abort函数,进程异常终止SIGPOLL SIGIO 8

2017-02-03 00:28:00 852

转载 使得守护进程一次执行一个

转载自:http://www.cnblogs.com/Alarm/p/6212973.html转载理由,本打算自己写一篇,看着大家写的都不错故转之1.守护进程守护进程(Daemon)是一种运行在后台的特殊进程,它独立于控制终端并且周期性的执行某种任务或等待处理某些发生的事件。2.让程序只运行一次如果让程序只运行一次,有很多方法,此处的一种方法是创建一个名字古怪的文件

2017-02-02 23:47:51 464

原创 进程间通信--命名管道(fifo)

区别于无名管道,只有文件描述符,只能用于父子进程的通信。 有名管道(fifo)其通信过程通过文件系统,可以达到不同进程中的通信 函数原型:#include <sys/types.h>#include <sys/stat.h>int mkfifo(const char *pathname, mode_t mode);参数1为fifo的文件路径参数2为所创建fifo的umask(文件掩码)在程

2017-02-02 18:00:12 351

原创 进程间通信--无名管道(pipe)

无名管道通信(pipe)无名管道通信主要用于父子进程之间,依赖fork的复制,或者vfork的共享,得以分享所得的无名管道的文件描述符。总结其性质有以下几点 1. 管道是半双工的,数据在一个时间只能向一个方向流动; 2. 需要双方通信时,习惯于建立起两个管道(关闭一个的读端和另一个的写端) 3. 只能用于父子进程或者兄弟进程之间(具有亲缘关系的进程); 4. 通信过程发生在内核中,不依赖于文

2017-02-02 15:54:58 509

ResHack 资源查看器

对于可执行文件的资源查看软件,方便的分析字符串等信息

2017-11-01

u-C/os 官方版

官方2.9.1 ucos源码未移植

2016-06-13

空空如也

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

TA关注的人

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