一、NMAKE 和 Makefile

1.1  NMAKE - 命令解释器。 依据Makefile文件里定义的脚本。完毕项目的编译等操作

1.2 Makefile - 定义编译、连接等脚本语言

1.3 Makefile 文件的使用

1.3.1 基本的语法规则

window.exe:window.obj //依赖行

cl.exe window.c /c   //命令行

link.exe window.obj user32.lib

window.exe 的依赖项是window.obj,假设window.obj被又一次改写 window.exe将又一次生成

通过时间戳(time stamp)推断程序是否须要又一次编译连接,要又一次编译连接

假设当文件改动最后时间与时间戳不同,将会又一次编译链接.

1.3.2  运行过程

1 NMAKE 首先找到第一个依赖行。依据依赖行之间的关系,建立依赖树。比如:

A:B

B:C

C:D

NMAKE会建立相应的依赖树。

A

|-B

|-C

|-D

2 在树建好后 NMAKE会首先运行D的命令行。然后依次运行父节点的命令行,

3 在A的命令行运行结束后,退出NMAKE

4 假设须要运行指定依赖行。须要在运行NMAKE时添加依赖行的名称

1.4 使用

1.4.1  NAMKE  指定文件

1.4.2 使用缺省的文件名称

假设make文件名称使用makefile 直接使用nmake命令

二、字符编码

MessageBox : MessageBoxA MessageBoxW

2.1 编码的历史

2.1.1 ASCII  0~127  7位表示

2.1.2 ASCII 扩展码 8位 表示

代码页:通过代码页来切换相应的字符

2.1.3  双字节字符集 DBCS

使用一个或两个字节表示字符

2.1.4 Unicode

所有使用2个字节表示字符

内存/硬盘等资源占用大

2.2 C语言和编码

2.2.1 单字节字符和字符串

char c =  'A';

char * pc = "ABCD";

2.2.2 宽字节的字符

wchar_t cText = 'A';

wchar_t*pszText =  L"ABCD";

2.2.3 相关函数

单字节字符的函数。 相应有多宽字节的函数。

strlen wcslen mbslen

printf  wprintf

2.2.4 TCHAR

为了程序中能够方便的支持unicode和多字节字符等,所以使用TCHAR来定义字符和字符串

更具_UNICODE宏开关会将TCHAR编译成不同字符类型

#define unicode

#ifndef unicode 

typedef char tchar

#define __t(x) x

#else

typedef wchar_t tchar

#define __t(x) l##x

#endif

使用时须要添加TCHAR.H头文件支持,使用_UNICODE 宏开福安进行编译

定义方式:

TCHAR* pszText = __T( "ABCDEF" );

2.2.5 Unicode的控制台打印

WriteConsole

2.3 Win32 程序与编码

2.3.1 Win32 API 的定义

每一个API对多字节和UNICODE分别有不同的版本号

MessageBox

MessageBoxA 多字节

MessageBoxW UNICODE字符

2.3.2 字符转换

MultiByteToWideChar

WideCharToMultiByte

版权声明:本文博主原创文章。博客,未经同意不得转载。

Win32 Windows规划 三的更多相关文章

  1. windows phone 三种数据共享的方式(8)

    原文:windows phone 三种数据共享的方式(8) 本节实现的内容是数据共享,实现的效果描述:首先是建立两个页面,当页面MainPage通过事件导航到页面SecondPage是,我们需要将Ma ...

  2. 转载:Windows下三分钟搭建Shadowoscks服务器端

    Windows下三分钟搭建Shadowoscks服务器端 之前在V2EX上有人问为啥没人做个在Windows上一键运行Shadowsocks服务器端的程序,我只想说……这是因为没人关注我的libQtS ...

  3. mutex,thread(c++11 windows linux三种方式)

    一 c++11  windows linux三种方式 //#include <stdio.h> //#include <stdlib.h> //#include <uni ...

  4. Win32 Windows编程 十

    一 Windows画图 1 图形绘制 1.1 图形绘制的方式 获取到画图的句柄,设备描写叙述符(DC).使用对应的画图API.在设备上绘制图形 1.2 颜色 RGB,每种颜色8位,共24位颜色 32位 ...

  5. Win32 Windows编程 十二

    一.对话框 1.对话框的分类 2.对话框的基本使用方式 3.对话框资源 4.有模式对话框的使用 5. 无模式对话框的使用 5.1 加入对话框资源 5.2 定义窗体处理函数 BOOL CALLBACK ...

  6. 我的第一次windows规划

    #include <windows.h>   LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM) ; //WinMain功能被分配一 ...

  7. Windows Phone 三、样式和资源

    定义样式和引用资源 <Page.Resources> <!-- 向资源字典中添加一个键为ButtonBackground值为SolidColorBrush对象 --> < ...

  8. WIN32服务程序(三):完整的服务程序实例

    前面我们所讲的“服务程序”,更准确地说是服务控制程序,例如我们通过输入应用的路径,将一个应用程序添加到服务控制管理器.一个服务控制程序可以将一个程序添加到服务控制管理器中,并控制它的运行.停止和删除等 ...

  9. python27 windows 下三种安装第三方库的办法

    一.使用easy_install C:\Python27\Scripts 下有 easy_install.exe .例如我要安装 beautifulsoup,可以从 cmd 进入该目录,直接运行: e ...

随机推荐

  1. 怎样在Android实现桌面清理内存简单Widget小控件

    怎样在Android实现桌面清理内存简单Widget小控件 我们常常会看到类似于360.金山手机卫士一类的软件会带一个widget小控件,显示在桌面上,上面会显示现有内存大小,然后会带一个按键功能来一 ...

  2. 一步步学习Linux开发环境搭建与使用

    00.Linux开发环境搭建与使用1--Linux简史 01.Linux开发环境搭建与使用2--Linux系统(ubuntu)安装方案 02.Linux开发环境搭建与使用3--通过虚拟机安装系统(ub ...

  3. nginx 区分pc和mobile 到不同的404页面

    if ($http_user_agent ~* '(Android|webOS|iPhone|iPod|BlackBerry|vivo)') { set $mobile_request '1'; } ...

  4. java之jvm学习笔记四(安全管理器)

    java之jvm学习笔记四(安全管理器) 前面已经简述了java的安全模型的两个组成部分(类装载器,class文件校验器),接下来学习的是java安全模型的另外一个重要组成部分安全管理器. 安全管理器 ...

  5. cocos2d-x游戏开发 跑酷(四) 关联与物理世界

    原创.转载注明出处http://blog.csdn.net/dawn_moon/article/details/21451077 前面一节尽管实现了一个跑动的人物,可是他只不过一个精灵在运行一个跑动的 ...

  6. OCP读书笔记(7) - 使用RMAN执行恢复

    7.Using RMAN to Perform Recovery 使用RMAN进行完全恢复system表空间文件丢失的恢复 模拟损坏: SQL> conn /as sysdba; SQL> ...

  7. 实现自己的http server - loop_in_codes - C++博客

    实现自己的http server - loop_in_codes - C++博客 实现自己的http server Write your own http server author : Kevin ...

  8. HDU ACM 1054 Strategic Game 二分图最小顶点覆盖?树形DP

    分析:这里使用树形DP做. 1.最小顶点覆盖做法:最小顶点覆盖 == 最大匹配(双向图)/2. 2.树形DP: dp[i][0]表示i为根节点,而且该节点不放,所需的最少的点数. dp[i][1]表示 ...

  9. VSTO之旅系列(二):创建Excel解决方案

    原文:VSTO之旅系列(二):创建Excel解决方案 本专题概要 引言 创建VSTO项目 Excel对象模型 创建Excel外接程序 创建Excel文档级自定义项 小结 一.引言 也许很多朋友都没有听 ...

  10. Wix学习整理(4)——关于WiX文件格式和案例HelloWorld的分析

    原文:Wix学习整理(4)--关于WiX文件格式和案例HelloWorld的分析 关于WiX文件格式 .wxs是WiX的源文件扩展名..wxs文件以类XML文件的格式来指定了要构造Windows In ...