http://blog.csdn.net/houmin0036/article/details/7702236

win32控制台项目指在32位Windows命令提示符(即所谓的dos)环境下运行的应用程序...
win32项目指运行于32位Windows操作系统中的应用程序...包括win32控制台项目...

1、Win32项目包括:Win32 应用程序、控制台应用程序、DLL 或其他静态库的项目;
2、控制台应用程序通常被设计为没有图形用户界面,并编译成独立的可执行文件。控制台应用程序通常从命令行运行,同时在命令提示和运行的应用程序之间交换输入和输出信息。

win32应用程序是有窗体的(当然也可以没有),有Windows消息循环机制的。 而win32控制台应用程序只是在控制台下运行的程序,类似以前dos的程序。

可以在VC里建一个win32 application和一个win32 console application,两个dsp工程文件对比一下,你会发现应用程序里的subsystem:windows,控制台程序里的subsystem:console。 subsystem这个链接选项告诉Windows如何运行可执行文件。 subsystem是console的话,Windows在进入可执行文件的代码前,就会产生一个控制台窗口。 subsystem是windows的话,操作系统就不产生console窗口,该应用程序的窗口由用户自己创建。

可以调用GUI里面的API的, 
如果你看了一些VC的启动代码(就是main,WinMain,DllMain之前的代码)就知道 
控制台程序在启动代码中多了取得标准输入输出句柄以及将程序参数转化成C语言格式 
的参数形式

控制台程序就是通过命令行的方式进行输入和输出的 
Win32程序是它的上层概念,Win32程序可以是Console的也可以是GUI的

Win32  程序:利用Windows编译器、连接器做出来的程序,都是所谓的Win32程序。 
Console程序:也是Win32程序,它是dos-like程序,可以调用C Runtime函数和不牵涉GUI的Win32API函数。Console视窗将是其标准输入输出设备(cin、cout)。 
Dos程序:过去在dos环境开发的程序。它也是以main()为函数进入点,可以调用C Runtime函数,但是不具备调用Win32API函数的能力。

Windows支持的两种应用程序:
 (1) 基于图形用户界面的应用程序,即GUI;
 (2) 基于控制台用户界面的应用程序,即CUI.
  Windows应用程序必须有一个在应用程序启动运行的调用进入点函数:
      应用程序类型             进入点
   需要ANSI字符和字符串的GUI应用程序      WinMain
     需要ANSI字符和字符串的CUI应用程序          main
     需要Unicode字符和字符串的GUI应用程序    wWinMain
   需要Unicode字符和字符串的CUI应用程序    wmain

前面是DOS环境的,是单任务的 
后面是WINDOWS的,支持多任务,多线程~

win32控制台程序是用来编写DOS程序的,在DOS下生成WINDOWS窗口的编写是相当麻烦的。要用DOS下c语言的绘图函数把窗口画出来。 但VC已经提供了窗口的框架和显示,我们现在没必要再去做这些工作了。 程序入口不能决定任何事,它就是一个入口,程序必须有它,程序完成什么样的功能由程序的代码来确定。 窗口就是一个图形,是由程序画出来的,代码封装在MFC底层。我们不需要具体了解,只需要知道原理就可以了。

源地址:http://hi.baidu.com/%D6%D0%B9%FA%C9%BD%B6%AB%C8%CB2009/blog/item/0ebc38d758af

【转】WIN32 控制台程序的更多相关文章

  1. Win32控制台程序和Win32应用程序

    刚接触Windows那一套,大多数概念都还没建立起来,整理了一下网上对“Win32控制台程序”的理解,谢谢各位网友了. win32控制台项目指在32位Windows命令提示符(即所谓的dos)环境下运 ...

  2. vs2008 新建win32控制台程序提示:脚本错误

    解决方案: 1.根据错误信息中的url,找到对应文件夹下的htm文件 2.使用notepad++打开default.htm文件,找到错误提示的434行,注释掉433和434行 然后保存文件,重新新建w ...

  3. 用消息在Win32控制台程序多线程间进行通讯

      #include <stdio.h> #include <windows.h> //#include <iostream> //#include <pro ...

  4. win32控制台程序 宽字符与短字符转化

    由于vs各版本之间存在字符设置不兼容问题,特总结char与tchar的互相转换函数,如下,在之后的工程中可以使用. void TcharToChar(const TCHAR * tchar, char ...

  5. 如何隐藏win32 控制台程序的console窗口 2011-06-17 17:59

    加上 即可 // 隐藏窗口#pragma   comment(linker,   "/subsystem:\"windows\"  /entry:\"mainC ...

  6. vc2010 win32 控制台应用程序中文乱码

    vc2010 win32 控制台应用程序中文乱码 在 vc2010 上用 win32 控制台程序写些测试代码调用 windows api ,处理错误信息时,发现用 wprintf 输出的错误信息出现了 ...

  7. VS中空项目、win32项目、控制台程序的区别(转)

    空项目,大多数想单纯创建c++工程的新同学,打开vs后很可能不知道选择创建什么工程,这时候请相信我,空项目是你最好的选择.因为空工程不包含任何的源代码文件,接下来你只需要在相应的源代码文件夹和头文件文 ...

  8. Linux终端和win32控制台文本颜色输出

    在使用putty.secureCRT.XShell等终端仿真器连接linux系统时,ls.vim等工具的输出都含有各种颜色,这些颜色的输出大大地增强了文本的可读性. 通常我们可以使用echo命令加-e ...

  9. Win32控制台、Win32项目、MFC项目、CLR控制台、CLR空项目、空项目区别

    转载:https://blog.csdn.net/zfmss/article/details/79244696 1.Win32控制台 初始代码模版以main为程序入口,默认情况下,只链接C++运行时库 ...

随机推荐

  1. Highchart URL

    http://www.highcharts.com/stock/demo/flags-general http://www.codesec.net/view/217265.html http://js ...

  2. linux shell执行中需要交互输入回车,Yes/NO Y/N

    最近写自动安装脚本遇到redis-server安装的时候,需要输入3个回车,对此尝试无果,最后google比较满意的解决办法: shell 脚本需要交互,比如输入回车,输入YES/NO Y/N之类进行 ...

  3. 对Linux(Unix)的基础知识归纳

    前言,不论是原生APP(Android&IOS),还是大型架构级基础环境(.NET&J2EE,或LAMP阵营等), 基本都不可避免的涉及到Linux(Unix),故还是觉得有必要把自己 ...

  4. CDN系统对网站的性能有极大的提升

    CDN系统对网站的性能有极大的提升 打开一个网站 我们只是请求了一个页面.单个页面,实际上所有文件都是一个新的请求.以新浪为例一共发起了35个请求. 这35个请求中.只有一个动态内容.其它均为静态.这 ...

  5. 第一课1、ROS

    ---恢复内容开始--- 1.什么是ROS ROS起源于2007年,斯坦福大学的人工智能实验室与机器人技术公司Willow Garage针对其个人机器人项目开发了ROS的雏形. ROS大致每年发布一个 ...

  6. [php-src]Php扩展的多文件编译

    内容均以php5.6.14为例. 假设有模块 foo,php_foo.h 和 foo.c 是固有文件,额外的C文件如果要加入编译,大致有五步. 1. 新增头文件 foo_bar.h #ifndef F ...

  7. axure设置变量值

    以登录框为例设置axure变量值 1.打开axure,打开新页面命名为login,拖入一个矩形背景,命名:登录背景图 2.拖入标签控件和输入框控件分别命名为用户名:.userName.密码:.pass ...

  8. vs

    https://www.visualstudio.com/downloads/download-visual-studio-vs

  9. php mysql支持emoji表情方案

    将emoji转换成utf8 然后存储到数据库,但是 效率低 public function rrr($text) { $text = 'a

  10. delphi XE5皮肤的使用

      做皮肤其实是项浩大的工程,从美工设计.到贴图.到程序设计,都非常的麻烦,如果不是一个非常成熟的产品且有很大的用户群体,并且公司具有相当实力,一般都不会去自己做皮肤,毕竟涉及的东西太多,一旦出现问题 ...