20130417

_tmain与main,winMain,wmain

1. main():WINDOWS的控制台程序(32BIT)或DOS程序(16BIT)入口函数
     WinMain():是WINDOWS的GUI程序入口函数

2. _tmain和_tWinMain的定义在<tchar.h>

#ifdef _UNICODE

#define _tmain      wmain
#define _tWinMain   wWinMain

#else   /* ndef _UNICODE */

#define _tmain      main
#define _tWinMain   WinMain

#endif

如果是UNICODE则主函数是wmain或wWinMain,否则是main或WinMain

UNREFERENCED_PARAMETER的作用

这个宏在 winnt.h 中定义如下:

#define UNREFERENCED_PARAMETER(P) (P)

换句话说 UNREFERENCED_PARAMETER 展开传递的参数或表达式。

我们在程序开头申明

int i;

之后就再也没使用过i,在最高级别的警告 Level 4(/W4)进行编译,胡会出现

“warning C4100: ''i'' : unreferenced formal parameter.”

UNREFERENCED_PARAMETER是对参数P的“假使用”,以达到避免编译器关于未引用参数的警告。

AllocConsole()和AttachConsole()

一般来讲GUI程序不能使用STDIN和STDOUT,但是有时有些特殊需要,希望GUI程序也有控制台,如:一个程序,既可以以GUI方式运行,又可以如果用户在控制台里打程序名的话,就以控制台程序的方式运行。
通过AllocConsole() 和 AttachConsole() 这两个WIN API就能实现上面的需求。这两个API分别是在GUI(MFC)程序中分配一个控制台和将程序附着到一个控制台上。

用法举例:

AttachConsole(ATTACH_PARENT_PROCESS); // 将当前程序附着到父进程上,因为是从控制台启动的,所以当前程序的父进程就是那个控制台。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值
>