
简单来说,有两种方式,一种是源码debug,即分析源码来找出bug位置,一般使用printf()打印出程序执行每一步的信息,一种是可执行文件debug,需要使用调试器来进行。1源码debug。类似于下面的源码,主要通过程序执行时输出的信息,来定位bug出现的位置,然后再修改源码。例如:#includevoidf(){;}intmain(){#ifdef_DEBUGprintf("startmainfunction!\n");#endifvoidf();#ifdef_DEBUGprintf("leavemainfunction!\n");#endifreturn0;}2可执行文件调试,windows平台常用的就是vs/vc自带的调试,另外一个就是微软自家开发的调试器windbg。Linux平台以gdb为常用。下面以dev-C++为例:1)在逗工具地-》编译选项-》"编译时加入以下命令"下面的编辑框里加上:-g32)在下面的"在连接器命令行加入以下命令"下的编辑框上加上:-g33)转到程序页,把gcc行修改为:gccexe-D__DEBUG__,4)把g++行修改为:g++exe-D__DEBUG__,5)点击确定,重新编译,就能调试了。
打印机无法打印的10种解决方法
一、使打印机处于联机状态。
如果打印机没有处于联机状态,自然是无法打印了。
二、重新开启打印机。
如果打印机处于联机状态仍无法打印文档,此时你可以重新开启打印机,不仅清除了打印机内存,还能解决不少的打印故障。
三、将打印机设置为默认打印机。
步骤如下:
1单击Windows“开始”菜单,指向“设置”,单击“打印机”,打开“打印机”窗口。
2右键单击打印机图标,系统d出快捷菜单,单击其中的“设为默认值”。
四、取消暂停打印。
方法是:在“打印机”窗口,右键单击在用的打印机图标,然后单击以清除“暂停打印”选项前的对号“√”。
五、使硬盘上的可用空间不低于10MB。
如果可用硬盘空间小于10MB,必须释放更多的空间系统才能完成打印任务。这时,请单击“磁盘清理”按钮,然后在“要删除的文件”列表框中,选中要删除的文件类型,单击“确定”按钮。
六、增加打印机的超时设置。
检查或更改超时设置,步骤如下:
1在“打印机”窗口,右键单击打印机图标,再单击“属性”。
2单击“详细资料”选项卡,在“超时设置”下增加各项超时设置。“未选定”项是指定Window s 等待打印机进入联机状态的时间,超过指定时间之后就将显示错误消息。
七、确保打印到合适的本地打印机端口。
步骤如下:
1在“打印机”窗口,右键单击打印机图标,再单击“属性”。
2单击“详细资料”选项卡,在“打印到以下端口”框中,确保已将打印机设置到适当的端口。最常用的端口设置为“LPT1”,也有打印机使用USB端口。
八、程序生成的输出不正确。
要确定程序生成的输出是否正确,可以采用通过其他程序打印文档的方法验证。我们以“记事本”打印测试文档,步骤如下:
1单击“开始”,指向“程序”,指向“附件”,单击“记事本”,打开“记事本”窗口。
2键入几行文字,然后在“文件”菜单中,单击“打印”命令。
如果能够打印测试文档,就是原来你使用进行打印的程序有问题,请重新安装程序。
九、重新安装打印机驱动程序。
有时,打印机驱动程序可能被损坏,从而引发无法打印文档的错误。我们可以重新安装合适的驱动程序,然后再打印。
1在“打印机”窗口,右键单击打印机图标,再单击“删除”,然后单击“是”按钮。如果系统提示“删除这台打印机的专用文件”,请单击“是”按钮。如果系统提示删除默认打印机,请单击“确定”按钮。
2在“打印机”窗口,双击“添加打印机”图标,打开“添加打印机向导”,单击“下一步”按钮,然后执行屏幕指令。
十、确保端口与打印机电缆工作正常。
进行了上述九项工作之后,以下的方法能够帮助你进一步发现问题之所在:
1打印机电缆连接是否牢靠如果计算机直接与打印机相连,要确保连接计算机和打印机的电缆两端都插对插牢。如果使用打印切换设备,请先绕过切换设备,将打印机直接与计算机相连,然后尝试进行打印。
2测试端口连接将打印机连接到另一个可用端口,重试打印文档,如果能够打印则表明原端口损坏。
3测试打印机电缆换上另一根打印机电缆,然后重试打印文档,如果能够打印则表明原电缆损坏。
首先纠正一下,MFC全称为:Microsoft Foundation Classes,微软基础类库。所以,从名字就可以看出,MFC,和软件开发模式没半点关系。你可能听说过MVC,这个才是软件开发模式,叫做Model-View-Controller,文档视图模型,一种讲UI界面和底层逻辑区分开发的开发模式。因此,MFC顶多叫做开发Windows程序的一种方法。MFC提供了一大推C/C++接口用来调用微软自己造的API,简化程序开发,损失效率不大的同时开发变得较为轻松了。
然后回答第二个问题,常不常用?至少在现在,不能说很常用,但是一样还是有很多人在用这个开发,微软自己造的技术还有很多,什么Win Form、WPF、NET等一堆。但是,我想说一点,这些技术虽然总是更新迭代,但是本质是不变的。理解了开发的思想,换一门技术重新学习只会耗费很少的额外学习时间。而且现在各种各样开发技术隔几天就冒出来,甚至还有什么宣称自家的某某技术各种nb的,但是最好不要一味被新的技术牵着鼻子走。
1、设置窗体扩展属性。
2、用下面函数:
BOOL SetLayeredWindowAttributes(
HWND hwnd,
COLORREF crKey,
BYTE bAlpha,
DWORD dwFlags
);
ConsoleWrite
在C++里面对应的,是cout。
但这个是控制台程序的方法,MFC程序不存在控制台,因此无法使用控制台输出。
如果你需要提示信息,那么使用AfxMessageBox函数比较好;
如果你需要显示在窗口中,那么根据不同的窗口控件或窗口模式来决定使用什么输出方式。
以上就是关于如何在mfc控制台输出调试信息全部的内容,包括:如何在mfc控制台输出调试信息、MFC无法打印、MFC是不是常用的软件开发模式等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)