C语言的学习&实践过程
文章平均质量分 67
biao2010
这个作者很懒,什么都没留下…
展开
-
C语言问题集锦
[参考来源:http://www.csdn.net/article/2012-09-06/2809604-12-c-interview-questions]1、gets()函数:函数gets()从stdin接收一个字符串而不检查它所复制的缓存的容积,这可能会导致缓存溢出,推荐使用标准函数fgets()代替。2、换行:window操作系统下的换行为'\r\n',linux和unix操原创 2012-09-11 19:04:27 · 812 阅读 · 0 评论 -
小知识
转载自:1.strlen函数必须保证输入参数不能为NULL,否则会出现段错误。因此在使用strlen时应该检查输入参数。[cpp] view plaincopyint strlen_t(const char *s) { int len = 0; if(s != NULL)转载 2014-11-06 14:49:59 · 498 阅读 · 0 评论 -
warning LNK4070的解决办法
重命名了一个MFC常规DLL的工程文件(VS C++ 2005编译环境),结果在编译时出现这样的警告:1>B.exp : warning LNK4070: .EXP 中的 /OUT:A.dll 指令与输出文件名"../outdir/Debug/B.dll"不同;忽略指令(这里假设原来的工程文件名叫A.vcproj,改名后叫B.vcproj)。后来我发现虽然输出为B.dll,但是对应的静态库B.li转载 2014-11-06 14:50:51 · 682 阅读 · 0 评论 -
fatal error LNK1104: cannot open file "xxx.lib"
转自【http://www.cnblogs.com/hyfemma/archive/2010/11/14/1876846.html】 出现这类问题一般是由于所运行的项目是VC6(或者vs2003)创建的,而后又用VS2005或者更高版本工具打开项目导致的,原因都是因为LIBCD.lib文件被更改了.要解决问题的话,只要在链接设置那里忽略它就没问题了。解决办法是:第一种方案转载 2014-11-21 15:06:17 · 11939 阅读 · 0 评论 -
web上用Activex控件开发步骤(MFC)
首先要说明的是 web上用activex是门被抛弃的技术。为什么这么说,主要基于以下几个原因:1.功能过于强大,强大到一旦安装,他所具有的权限可以做任何事,极易被人利用做坏事(相信大家都有浏览网页后莫名被安装流氓软件的经历,当然流氓软件利用的方式不止控件一种);2。通过网页下载控件的中间过程受到操作系统、杀毒软件、浏览器等多方面因素限制,这使你的控件产品未必能在所有用户的电脑上正常使用;3。最恶心转载 2014-11-05 10:27:13 · 788 阅读 · 0 评论 -
创建线程的方法【CreateThread, AfxBeginThread,_beginthread, _beginthreadex的区别】
CreateThread, AfxBeginThread,_beginthread, _beginthreadex的区别CreateThread是Windows的API函数(SDK函数的标准形式,直截了当的创建方式,任何场合都可以使用),提供操作系统级别的创建线程的操作,且仅限于工作者线程。不调用MFC和RTL的函数时,可以用CreateThread,其它情况不要轻易。在使用的过程中要考虑转载 2014-11-04 11:50:31 · 629 阅读 · 0 评论 -
MFC中release版本和debug版本区别
最近MFC写了个程序,生成release版,原来正常,后来删掉了些控件再编译运行,结果竟然报内存读写错误,debug却是正常的。后来将“Project Settings” 中 “C++/C ” 项目下优化选项改为Disbale(Debug),就又能正常运行了。DEBUG和RELEASE 版本差异及调试相关问题【转】转载 2014-11-04 11:39:31 · 2351 阅读 · 0 评论 -
C/C++内存泄漏及检测
“该死系统存在内存泄漏问题”,项目中由于各方面因素,总是有人抱怨存在内存泄漏,系统长时间运行之后,可用内存越来越少,甚至导致了某些服务失败。内存泄漏是最难发现的常见错误之一,因为除非用完内存或调用malloc失败,否则都不会导致任何问题。实际上,使用C/C++这类没有垃圾回收机制的语言时,你很多时间都花在处理如何正确释放内存上。如果程序运行时间足够长,如后台进程运行在服务器上,只要服务器不宕机就一转载 2014-11-04 11:16:19 · 486 阅读 · 0 评论 -
VC++6错误检查工具
先说个下载地址吧:http://download.csdn.net/source/1002260 http://www.vckbase.com/tools/downtools.asp?id=22注册码就在压缩包的文本文档里面、之所以是6.01版的,因为它对VC++6支持的很爽BoundsChecker 是一个Run-Time错误检测工具,它主要定位程序在运行时期发生转载 2014-11-04 11:44:19 · 1442 阅读 · 0 评论 -
MFC的回调函数
MFC中应该有两类回调函数:一类是源自C的传统回调函数,此类回调函数若非定义为全局函数,而定义在类中的话,要添加static约束,常见的有EnumXXX();一类是消息响应函数,通过成员函数指针实现回调。 设想一种情况,基类A触发某事件E后,回调某定义好的函数F进行事件处理(MFC中表现为消息响应函数)。继承于类A的子类B和C,可能对于E有不同的处理方式,于是需要对基类A的函数转载 2014-11-04 10:49:07 · 5876 阅读 · 0 评论 -
C++ 中通过GetAdaptersInfo获取网卡配置和Ip地址信息
参考自:http://www.cnblogs.com/L-hq815/archive/2012/08/04/2622829.html转载 2014-08-27 11:08:09 · 2796 阅读 · 0 评论 -
孙鑫视频VC++深入详解学习笔记
VC++深入详解学习笔记Lesson1: Windows程序运行原理及程序编写流程Lesson2:掌握C++基本语法Lesson3: MFC框架程序剖析Lesson4:简单绘图Lesson5:文本编程Lesson6:菜单编程Lesson7:对话框编程Lesson9:定制应用程序的外观Lesson10:绘图控制Lesson11图转载 2014-05-26 10:34:22 · 1822 阅读 · 0 评论 -
ASCII码表
【参考来源:http://www.asciima.com/】ASCII码大致可以分作三部分組成。第一部分是:ASCII非打印控制字符; 第二部分是:ASCII打印字符; 第三部分是:扩展ASCII打印字符。第一部分:ASCII非打印控制字符表ASCII表上的数字0–31分配给了控制字符,用于控制像打印机等一些外围设备。例如,12代表换页/新页功能。此命令指示打印机跳到下一页转载 2012-09-14 11:24:54 · 1193 阅读 · 0 评论 -
errno.h
【参考来源:http://www.cnblogs.com/riky/archive/2008/02/02/1062750.html】查看错误代码errno是调试程序的一个重要方法。当linuc C api函数发生异常时,一般会将errno变量(需include errno.h)赋一个整数值,不同的值表示不同的含义,可以通过查看该值推测出错的原因。在实际编程中用这一招解决了不少原本看来莫名其妙的转载 2012-09-13 16:34:40 · 937 阅读 · 0 评论 -
VC++ 6.0集成开发环境 编译别人的工程报错 C1083 C2065的可能原因
今天编译一同事编写的代码:报错:fatal error C1083: Cannot open include file: 'Dbghelp.h': No such file or directory原创 2014-06-30 12:35:09 · 1406 阅读 · 0 评论