strcpy引起的内存溢出
来源:互联网 发布:中国国家数据网 编辑:程序博客网 时间:2024/04/29 17:38
项目中有一段代码调用函数C_DataBaseInterface::BulkExecSql,函数部分代码如下:
这是一个库函数,但是在调用这个库函数中的BulkExecSql函数时发生了coredump,跟进代码时发现函数coredump发生在函数执行完成时,就是在函数返回时发生了coredump,在进一步检查程序时发现strcpy(tablename,strstr(sql,"FROM")+5);这句话似乎存在隐患,因为char tablename[50]="";但是sql的长度可能远远超过50,在实际测试中发现并不是每次都会发生coredump,取决于sql的长度,但是似乎在sql在100以内是可以的,太长就会出现coredump,那么现在问题基本可以定位,就是因为这次的strcpy引起了内存溢出,strcpy将tablename后的内存覆盖,那么本来存放的程序信息被覆盖,导致在返回时出错,进而coredump。
现在的问题是超过不多是没有关系的,可能要研究研究编译的内存是如何存放的,有空继续研究研究
- strcpy引起的内存溢出
- 位图引起的内存溢出OutOfMemory解决方案
- 位图引起的内存溢出OutOfMemory解决方案
- 位图引起的内存溢出OutOfMemory解决方案
- 位图引起的内存溢出OutOfMemory解决方案
- 位图引起的内存溢出OutOfMemory解决方案
- 位图引起的内存溢出OutOfMemory解决方案
- 位图引起的内存溢出OutOfMemory解决方案
- 位图引起的内存溢出OutOfMemory解决方案
- 位图引起的内存溢出OutOfMemory解决方案
- 位图引起的内存溢出OutOfMemory解决方案
- 位图引起的内存溢出OutOfMemory解决方案
- 位图引起的内存溢出OutOfMemory解决方案
- bitmap引起的内存溢出OutOfMemory解决方案
- strcpy 溢出的问题
- Handler有可能引起内存溢出
- android 由解析bitmap引起的内存溢出问题
- Android 中关于activity引起的内存溢出
- 服装企业SPA经营模式解析
- 惊魂 dell 740 with esxi 4.0
- 设计一个医院
- WTL Wizard for Visual Studio 2008
- 窗口刷新问题(WM_PAINT、BeginPaint、EndPaint的说明)
- strcpy引起的内存溢出
- 消除桌面图标阴影
- 二进制——减法
- xUnit 测试模式: 摘要
- 发布一个Windows下Perl的执行器
- fatal error C1001: INTERNAL COMPILER ERROR 和 链接出错 unresolved external symbol _WinMain@16
- struts2 标签 s:select
- scriptx.cab无法加载控件解决方法
- 预防网站漏洞扫描工具入侵: