MFC与win32控制台编写的程序有什么区别 求指教

MFC与win32控制台编写的程序有什么区别 求指教,第1张

WIN32 程序和MFC 程序生成的都是Windows应用程序。不同的是,Win32程序使用Windows SDK框架生成应用程序框架,默认该框架程序不使用MFC(微软基础类),生成的都是面向过程的程序框架,程序的入口时WinMain,使用这个框架需要对Windows SDK程序比较熟悉;MFC程序,可以选择单文档、多文档和对话框的应用程序框架,该框架支持MFC,生成的程序框架,都是C++面向对象的应用程序,程序的入口是CXXXApp。

Win32 Application  和 Win32 Console Application 之间的区别

1、程序不同

Win32 Application 是标准windows程序,完全拥有windows的特性,可以通过鼠标点击窗口来完成控制。

Win32 Console Application是控制台应用程序,类似于MS-DOS窗口,只能运行命令行程序,不具备消息响应机制。

2、入口函数不同

Win32 Application 入口函数是WinMain(),它具有消息响应机制,可以运行图形化的C++程序。

Win32 Console Application入口函数是main(),可以访问部分windows API函数,如果你编写传统的C程序,必须建立Win32 Console程序。

扩展资料:

Win32 Application和Win32 Console Application 都是工作在32位Windows环境的程序。

它通过GUI(Graphics User Interface图形用户接口)可以把窗口界面做得比较个性化,比如圆形的、不规则形状的等等,另外,我们还可以通过鼠标点击来完成控制。所以说它是基于WINDOWS平台的32位开发环境开发应用程序(即,SDK程序)。入口函数为WinMain()。

Win32 Console Application(win32控制台应用程序)往往是像MS-DOS窗口(XP中叫命令提示符)的样子出现,我们得用键盘输入各种命令来使用它,它与纯dos程序区别是:

它是32位的;或者叫CUI(Character User Interface字符用户接口)。console程序以main()为入口,可以访问部分windows API函数,比如创建窗口、对话框等等。

参考资料来源:百度百科-win32 console application

参考资料来源:百度百科-win32

控制台字符界面,只要是字符来进通信。WIN32 只要是用来开发主流windows程序的。

一步一步来看:

首先从函数接口:

int main(int argc, char argv[])

单单的一个入口点,两个参数就是,命令行参数。一个数组和一个整形。说实话让我来说我也说不出来这个 int main有什么可讲的。

重点讲一讲这个WINMAIN

int WINAPI WinMain

(

HINSTANCE hInstance,

HINSTANCE hPrevInstance,

LPSTR lpCmdLine,

int nCmdShow

)

在你创建WIN32程序的时候,入口点是这个:

所以,系统在加载你的程序进入内存的时候cs:ip在完成程序初始化之后就会指向这个WINMAIN 首地址。我看来看参数: hInstance是windows 为每一个WIN32程序分配的实例化句柄(用来管理程序的一个标识符)

hPrevInstance前一个执行实体的执行实体句柄

lpCmdLine 同样,命令行

nCmdShow 状态。

-----------------------

简而言之,一般的C编译器默认都会用MAIN 来作为程序入口,这个规范。

但是windows为了方便程序的内存管理或者是图形界面的管理。重新自定义了一个入口函数,当然编译器肯定要重新编写了,因为这个一个新的规范。参数即是为了管理程序的。

基本上每一个windows程序都会有一个WINMAIN 。

以前写过MRP的手机程序。

int tmain(int x,int y,int flags)

显而易见,这个触屏的坐标个触发的事件。 我相信你已经懂了。

如果你想研究WIN32参数具体作用,那么推荐一本 <windows高级编程>

以上就是关于MFC与win32控制台编写的程序有什么区别 求指教全部的内容,包括:MFC与win32控制台编写的程序有什么区别 求指教、Win32 Application和Win32 Console Application区别、C语言在创建文件项目时,有C语言WIN32控制台应用程序 和 WEN32项目. 请答诉两项参数区别.等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/9300255.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-26
下一篇2023-04-26

发表评论

登录后才能评论

评论列表(0条)

    保存