代码改变世界

随笔分类 - C++

c++的线程安全静态检查 Thread Safety Analysis

2022-12-02 20:54 by youxin, 4 阅读, 收藏, 编辑
摘要: leveldb源码的过程中,发现很多成员变量被GUARDED_BY修饰,如下: struct IterState { port::Mutex* const mu; Version* const version GUARDED_BY(mu); MemTable* const mem GUARDED_B 阅读全文

linux file lock文件锁

2022-11-21 16:46 by youxin, 26 阅读, 收藏, 编辑
摘要: http://www.kaotop.com/it/37363.html https://www.codenong.com/cs106758831/ 上锁文件锁有两种shared lock 共享锁 exclusive lock 排他锁 当文件被上了共享锁之后,其他进程可以继续为此文件加共享锁,但此文件 阅读全文

compiler explorer

2022-10-15 14:12 by youxin, 19 阅读, 收藏, 编辑
摘要: Compiler Explorer is an interactive compiler exploration website. Edit code in C, C++, C#, F#, Rust, Go, D, Haskell, Swift, Pascal, ispc, Python, Java 阅读全文

正则表达式匹配 密码保护

2020-07-04 04:22 by youxin, 7 阅读, 收藏, 编辑
该文被密码保护。 阅读全文

SQL SERVER 传入数组参数处理

2020-03-03 22:45 by youxin, 1803 阅读, 收藏, 编辑
摘要: sql 中没有数组的概念,我们实际传入的是一个逗号分隔的字符串 /*作业优先级跳到最前面*/ ALTER PROCEDURE proc_TaskJumpPriority ( @ID varchar(100)--多条作业ID如:10,11,12 ) AS DECLARE @PointerPrev in 阅读全文

Linux c++ 性能分析工具gprof

2020-03-02 22:01 by youxin, 4925 阅读, 收藏, 编辑
摘要: 程序分析工具不同于调试器,它只产生程序运行时某些函数的调用次数、执行时间等等宏观信息,而不是每条语句执行时的详细信息。Gprof是Linux下一个强有力的程序分析工具。对于C、Pascal或者Fortran77语言的程序,它能够以“日志”的形式记录程序运行时的统计信息:程序运行中各个函数消耗的时间和 阅读全文

linux 中printf实现

2020-02-11 02:57 by youxin, 610 阅读, 收藏, 编辑
摘要: https://blog.csdn.net/zhangyanquen/article/details/8274148 https://blog.csdn.net/yangzhiloveyou/article/details/8733555 阅读全文

c++数组初始化误区

2020-02-02 00:45 by youxin, 1058 阅读, 收藏, 编辑
摘要: 看下面的一段代码: int statusArr[100] = {1} 能达到全都初始化为1的结果么? 结果是只有第一个元素初始化了为1,其他都是0. 之前经常写 int a[100]= {0} 这么写可以,为什么? 因为c++有个基本的语法规则,数组初始化列表中的元素个数小于指定的数组长度时,不足的 阅读全文

windbg coredump奔溃追踪

2019-12-28 14:00 by youxin, 930 阅读, 收藏, 编辑
摘要: Windbg简单来说就是一个Windows下对用户态/内核态的程序进行调试,以及对Core Dump文件的分析。对于Crash,资源泄露,死锁等问题的分析,Windbg是一个强有力的利器。 生成Dump文件方式 1.1任务管理器 在程序崩溃后,先不关闭程序,在任务管理器中找到该程序对应的进程。右键— 阅读全文

vs中 Stack around the variable 'XXX' was corrupted.

2019-10-28 11:26 by youxin, 491 阅读, 收藏, 编辑
摘要: https://blog.csdn.net/hou09tian/article/details/75042206 阅读全文

long 在不同操作系统下所占用的字节数

2019-05-12 20:24 by youxin, 6679 阅读, 收藏, 编辑
摘要: 不同平台下C\C++数值数据类型长度如下: 类型 win32 win64 linux32 linux64 其中long类型和指针类型需要特别注意,编写跨平台的软件时尽量不要使用long类型,或者需要对long类型做特殊处理 由上图可以说明, long在linux下64位与win64位下表现不一致。这 阅读全文

记一次难忘的排错debug经历(找了5天左右)(涉及内存覆盖)

2019-04-04 14:23 by youxin, 660 阅读, 收藏, 编辑
摘要: strcpy和memcpy都没有处理内存覆盖问题。 函数描述 The memcpy function copies count bytes of src to dest. If the source and destination overlap, this function does not en 阅读全文

linux神器strace

2018-04-15 00:20 by youxin, 27681 阅读, 收藏, 编辑
摘要: man strace: strace - trace system calls and signals DESCRIPTION In the simplest case strace runs the specified command until it exits. It intercepts a 阅读全文

c++类成员变量初始化相关问题

2018-04-14 18:07 by youxin, 5282 阅读, 收藏, 编辑
摘要: 对于内置变量的自动初始化 代码1 输出: CONST=100 a[0]=0 b=0 c=0 d=2514932 e=0 f[0]=1307813 *p2=457819009 数据区存放已初始化的全局变量,静态变量(包括全局和局部的),常量。 未初始化数据区(uninitializeddata seg 阅读全文

c++11 auto unique_ptr 等

2016-06-07 10:14 by youxin, 352 阅读, 收藏, 编辑
摘要: c++11 条款21:尽量使用std::make_unique和std::make_shared而不直接使用new c++11 条款18: 使用std::unique_ptr来进行独享所有权的资源管理 https://msdn.microsoft.com/zh-cn/library/hh279676 阅读全文

unresolved external symbol __report_rangecheckfailure 解决思路

2016-05-12 16:39 by youxin, 1453 阅读, 收藏, 编辑
摘要: __report_rangecheckfailure 是用来检查堆栈缓存溢出的,如果编译的时候打开GS(project property--》Configuration properties--》c/c++--》Code generation--》Buffer security check)选项时( 阅读全文

#pragma message的作用

2016-04-27 10:20 by youxin, 9720 阅读, 收藏, 编辑
摘要: 一般情况下,#pragma message( messagestring )是在编译期间,将一个文字串(messagestring)发送到标准输出窗口。典型的使用方法是在编译时报告和显示信息。下面的代码段是编译期间在标准输出窗口显示一条消息:#if _M_IX86 == 500#pragma mes 阅读全文

c++ unique_lock lock_guard

2016-01-24 22:52 by youxin, 1965 阅读, 收藏, 编辑
摘要: unique_locktemplate class unique_lock;Unique lockAunique lockis an object that manages amutex objectwithunique ownershipin both states:lockedandunloc... 阅读全文

tinyxml安装和使用

2016-01-14 21:29 by youxin, 2244 阅读, 收藏, 编辑
摘要: 下载:官方文档:http://www.grinninglizard.com/tinyxmldocs/index.html中文翻译:http://www.cnblogs.com/kex1n/archive/2010/10/03/1841502.htmlTinyXML是一个开源的解析XML的解析库,能够... 阅读全文

C++读取name values形式Config 配置文件

2016-01-11 01:10 by youxin, 370 阅读, 收藏, 编辑
摘要: http://cooker.iteye.com/blog/777455 阅读全文
1 2 3 4 5 ··· 11 下一页