1、参见:http://zhidao.baidu.com/question/12810776.html 在VC里建一个win32 application和一个win32 console application,两个dsp工程文件对比一下,你会发现应用程序里的subsystem:windows,控制台程序里的subsystem:console。 subsystem这个链接选项告诉Windows如何运行可执行文件。 subsystem是console的话,Windows在进入可执行文件的代码前,就会产生一个控制台窗口。 subsystem是windows的话,操作系统就不产生console窗口,该应用程序的窗口由用户自己创建。 2、http://zhidao.baidu.com/question/314655650.html 控制台程序比较节省系统资源,写非常大的服务端程序,非常消耗系统资源的时候,建议用控制台程序,别看那么几个控件、按钮占地方不大,内存都是一点点挤出来,又一点点消耗掉的。 控制台模式还有个优点就是,不会因为线程被阻塞就停止响应,换句话说,如果你只是做1对1,或者n(n<10)对1的时候,如果你选用最见的阻塞型的select模型的话,控制台不会被阻塞,但是窗口程序就会停止响应了(线程越多越占用系统资源,线程切换的时候,系统对堆栈的操作效率极其低下,所以不是线程越多越好,所以你可以每个IP一个线程来达到避免停止响应,但是不建议这么做) 3、程序的主要区别应该是入口函数不一样,因为界面显示所使用的类库不同。 4、http://zhidao.baidu.com/question/8861937.html Windows编程的主要特点有: 图形界面 面向对象程序设计 事件驱动 高效的内存管理 设备独立性 动态连接 1.1.1 图形界面 漂亮、统一的图形用户界面; 菜单条、工具条、状态条等基本对象; 方便、快捷的联机帮助;可以同时浏览多个界面。 1.1.2 面向对象程序设计 采用面向对象技术开发基于Windows的应用程序能更好地发挥操作系统本身的优势。 1.1.3 事件驱动 面向对象程序设计最根本的特点就是事件驱动。 与事件驱动相对应的是过程驱动。 5、其实,现在往深处想想,竟然没什么不同的。 控制台上也可以实现GUI,图形界面也可以使用控制台命令。 只是一般控制台用来编写服务类、驱动类程序,窗口用来做末端用户配置。
原文地址:http://blog.csdn.net/u010258605/article/details/46307425