16、基于标准的API使用及Windows平台编译工具介绍

基于标准的API使用及Windows平台编译工具介绍

1. 标准特性及宏定义

在编程中,我们可以利用已实现的标准特性。目前支持的一些特性包括C++风格的注释,以及在条件表达式(出现在for、if、while和switch语句中)内进行局部变量声明。此外,该标准禁止默认将函数和变量声明为int类型,并允许在代码块内的任意位置声明变量,而不要求必须在代码块的第一条语句之前进行声明。需要注意的是,这个特性对C++代码没有影响。

还有一个宏定义 _GNU_SOURCE ,定义这个宏会引入之前描述的所有内容,包括ISO C89、ISO C99、POSIX.1、POSIX.2、BSD、SVID、X/Open以及GNU定义的扩展。如果POSIX.1和BSD之间存在冲突,POSIX的定义优先于BSD的定义。不过,应该避免使用这个宏,因为GNU扩展本质上是不可移植的。

2. 微软运行时库对POSIX的支持

Mac OS X和Linux的开发都基于GCC和其他GNU工具,因此在编译器和库支持的选择上没有太多需要考虑的。但在微软Windows系统上情况则完全不同。

早在20世纪90年代初Windows NT 3.51发布时,微软就公开承诺在一定程度上平等支持POSIX和Win32 API。Windows NT 2000、Windows XP和Vista本质上都是基于Windows NT的系统,同样适用这种架构。而像Windows 95、Windows 98和Windows Me这些非NT架构的Windows版本,微软已经不再提供支持,应用开发者也不应再继续支持。

以创建文件的API为例,在Win32中,通过调用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值