C/C++
文章平均质量分 53
woswod
这个作者很懒,什么都没留下…
展开
-
C++ try{} catch(…){} 与 Throw()的编译器优化
try{} catch(…){}用 try{ } catch(…){ } 来捕获C++中一些意想不到的异常,这种方法在VC中其实是靠不住的。例如下面的代码:try { BYTE* pch ; pch = ( BYTE* )00001234 ; //给予一个非法地址 *pch = 6 ; //对非法地址赋值,会造成Access Violation 异常转载 2017-03-18 14:17:39 · 722 阅读 · 0 评论 -
动态库和静态库
首先纠正所谓“静态连接就是把需要的库函数放进你的exe之中”的说法。在真实世界中,有三个概念:Use static libary, static linked DLL, dynamic linked DLL. 多数人混淆了static libary 和 static linked DLL的概念,当然他们有似是而非的“相似之处”,比如都用到.lib,下面具体说明。使用静态库(Use static li原创 2018-02-19 23:32:41 · 265 阅读 · 0 评论 -
unresolved external symbol boost::throw_exception
使用boost库,VS生成的时候一直报错, error LNK2019: 无法解析的外部符号 “void __cdecl boost::throw_exception(class std::exception const &)”搜索网上资料得知,可能是使用的boost库默认定义了BOOST_NO_EXCEPTIONS宏,需要用户自定义throw_exception函数,在报错的那个c...原创 2018-03-06 15:03:37 · 1825 阅读 · 0 评论 -
记录C/C++编程中遇到的一些小问题
1. printf比如char a = \x90;printf("%02x", a);想输出为90,没想到却是ffffff90,这个问题害我一个程序老是出错最终发现只要改为unsigned char a = \x90;问题就解决了,其实还是正负数的问题...原创 2018-02-19 23:17:03 · 294 阅读 · 0 评论 -
SPEC2006编译,生成so文件
1. 安装$ sh install.sh -d /work/speccpu/$ source shrc$ cd config$ cp Example-linux-ia64-gcc.cfg my.cfg修改 my.cfg 中MYPATH为gcc的目录该文件配置好后,运行以下命令编译bzip2 benchmark,$ runspec --config=my.cfg --action=b...原创 2018-10-15 15:37:21 · 747 阅读 · 0 评论 -
时间操作相关的函数
这里写自定义目录标题Windows下的各种时间输出Windows下修改文件时间Windows下的各种时间输出void TestTime(){ char tmpbuf[128], ampm[] = "AM"; time_t ltime; struct _timeb tstruct; struct tm *today, *gmt; /* Set time...原创 2018-11-17 23:44:05 · 204 阅读 · 0 评论