社区
C++ Builder
帖子详情
bcb 的codeguard 有bug ?
xili
2006-01-22 01:56:07
用 _wfopen() 来处理 unicode 的文件名, 当打开 codeguard 时, codeguard报错, 说"参数调用错误".
但实际文件打开和读写都是对的.
这样有点麻烦,如果关掉 codeguard, 就不能查其他错误了, 打开了又总在 _wfopen() 这里纠缠.
请各位大侠指点呀.
...全文
162
7
打赏
收藏
bcb 的codeguard 有bug ?
用 _wfopen() 来处理 unicode 的文件名, 当打开 codeguard 时, codeguard报错, 说"参数调用错误". 但实际文件打开和读写都是对的. 这样有点麻烦,如果关掉 codeguard, 就不能查其他错误了, 打开了又总在 _wfopen() 这里纠缠. 请各位大侠指点呀.
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xili
2006-01-23
打赏
举报
回复
呵呵, 老季总是有办法, 多谢.
tanlim, 字符串前L, 就表示它是 wchar_t 类型了.是编译器的约定.
加上L后,的确隐含了char 到 wchar_t转换.
但问题不是因为字符串转换的原因.我猜测原因应该是 FILE *fp 所指的内容有所不同 而被codeguard检测到, 后面的 fread, fclose 都不涉及字符串转换.
tanlim
2006-01-22
打赏
举报
回复
_wfopen函数是存在,定义WIDESTRING文件名的打开,而楼主的
FILE * fp2 = _wfopen(L"d:\\test.txt", L"rb");
文件名必须定义为宽字符串,而默认的BCB环境是以ANSISTRING字符串使用的,所以这个地方存在隐含转换不安全的情况。CODEGUARD报错就正常了。
再者问一下楼主你字符串前的L是宏定义吗?
原函数没这个用法呀。
jishiping
2006-01-22
打赏
举报
回复
其他的函数,采用类似的办法。比如你说 fclose 也会这样,那么再增加下面的2行:
[fclose]
Fail=no
jishiping
2006-01-22
打赏
举报
回复
我还是第一次听说 _wfopen 这个函数呢。不过可以自己配置CodeGuard文件,方法很简单。在程序目录下建立一个 ***.cgi 的文件(*** 就是程序的名字),然后用记事本打开,添加下面的2行就可以了:
[fread]
Fail=no
xili
2006-01-22
打赏
举报
回复
只要 FILE * fp 是用 _wfopen 打开的,
后面的 fread(), fclose() 都会被codeguard报错.
xili
2006-01-22
打赏
举报
回复
代码:
FILE * fp2 = _wfopen(L"d:\\test.txt", L"rb");
char buf[20];
fread(buf,1,2,fp2);
fclose(fp2);
俺的环境: win2k + bcb6
ccrun.com
2006-01-22
打赏
举报
回复
贴出你的代码看看。
关于如何在
BCB
中使用
Code
Guard
关于如何在
BCB
中使用
Code
Guard
关于如何在
BCB
中使用
Code
Guard
作者:深圳虫 来自:深圳虫网本文来自http://www.sz
bug
.com/disparticle.aspID=4一、 为什么写这篇东西自己在使用
BCB
5写一些程序时需要检查很多东西,例如内存泄漏、资源是否有释放等等,在使用了很多工具后,发觉
BCB
5本身自带的工...
2021-10-10 C++Builder 内存泄漏检查工具-
Code
Guard
(转)
C++Builder 内存泄漏检查工具-
Code
Guard
(转) 关于如何在
BCB
中使用
Code
Guard
一、为什么写这篇东西 自己在使用
BCB
5写一些程序时需要检查很多东西,例如内存泄漏、资源是否有释放等等,在使用了很多工具后,发觉
BCB
5本身自带的工具——
Code
Guard
,非常不错,使用也挺方便的,但是摸索了很久(以及翻查了一些资料,包括HELP)才算是会用了。写这篇文章的目的希望有这方面的问题的朋友可以借鉴一下,大家互相学习,共同进步。我的联系方法:EMail:
bug
@sz
bug
.com" re
关于如何在
BCB
中使用
Code
Guard
(转)
fm: http://www.189works.com/article-42035-1.html 关于如何在
BCB
中使用
Code
Guard
作者:深圳虫 来自:深圳虫网 本文来自http://www.sz
bug
.com/disparticle.aspID=4 一、 为什么写这篇东西 自己在使用
BCB
5写一些程序时需要检查很多东西,例如内存泄漏、资源是否有释放等等,在使用了很多工具
Code
Guard
工具
一、 为什么写这篇东西 自己在使用
BCB
5 写一些程序时需要检查很多东西,例如内存泄漏、资源是否有释放等等,在使用了很多工具后,发觉
BCB
5 本身自带的工具——
Code
Guard
,非常不错,使用也挺方便的,但是摸索了很久(以及翻查了一些资料,包括 HELP )才算是会用了。写这篇文章的目的希望有这方面的问题的朋友可以借鉴一下,大家互相学习,共同进步。我的联系方法: Email : szbu
C++Builder 内存泄漏检查工具-
Code
Guard
(转)
C++Builder 内存泄漏检查工具-
Code
Guard
(转)[@more@]关于如何在
BCB
中使用
Code
Guard
一、为什么写这篇东西 自己在使用
BCB
5写一些程序时需要检查很多东西,例如内存泄漏、资源是否有释放等...
C++ Builder
13,825
社区成员
102,679
社区内容
发帖
与我相关
我的任务
C++ Builder
C++ Builder相关内容讨论区
复制链接
扫一扫
分享
社区描述
C++ Builder相关内容讨论区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章