[linux]segvcatch简单使用

https://code.google.com/p/segvcatch/

This is a crossplatform C++ library designed to convert a hardware exceptions, such as segmentation fault, or floating point errors, into a software language exceptions, which can be handled later with a try/catch construction.

Other words, it's a crossplatform structured exception handling (SEH).

有时候遇到段错误,我们想把这个异常抓住,segvcatch就可以帮助我们做这个事。

 

下载好segvcatch-0.9.1.zip后解压看里面的doc.h步骤即可,这里我们提取文件单独测试下

下载地址:http://pan.baidu.com/s/16ViuM

1.提取相关文件

提取的文件如上面的全部.cpp和.h文件,Makefile后面一步再写,.so是后面生成的,.sh一个运行脚本

2.编辑Makefile

CXX        =    g++
TARGET    =    main
SOURCES    =    main.cpp
LIBS    =    -L./ -lsegvcatch
CXXFLAGS=    -Wall -fexceptions -fnon-call-exceptions
RM        =    rm -rf

$(TARGET):$(SOURCES)
    $(CXX) $^ $(LIBS) -o $@ $(CXXFLAGS)

.PHONY:clean
clean:
    $(RM) main *.so
.PHONY:lib
lib:segvcatch.cpp
    $(CXX) $^ -fPIC -shared -o libsegvcatch.so

3.编译测试(OK!)

#make lib

#make

#./main

Exception catched : My SEGV

Exception catched : My FPE

We are living yet!

 

转载于:https://www.cnblogs.com/luoxiang/p/4646170.html

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值