Objective-C预处理程序
来源:互联网 发布:淘宝降权 编辑:程序博客网 时间:2024/04/28 02:19
Objective-C学习笔记之预处理程序是本文要介绍的内容,主要介绍了预处理程序中语句的使用方法,预处理程序语句以(#)标记。来看详细内容。
一、#define
1、更高级的定义类型
给符号名称指派表达式和其他任何东西。如:
- #define TWO_PI 2*3.141592654,#define AND &&
预处理程序假设定义包含在程序的一行中。如果需要第二行,那么上一行的最后一个字符必须是反斜线符号“\”。如:
- #define IS_LEAP_YEAR(y) y%4==0&&y0!=0\
- ||y@0==0
可带参数。预定义(definition)通常称作“宏”。
2、#运算符
如果在宏定义中参数之前放置一个#,那么在调用该宏时,预处理程序将根据宏参数创建C风格的常量字符串。如:
- #define str(x) #x
- str(testing)——"testing"
- str("hello")——"\"hello"\"
3、##运算符
用于把两个标记(token)连在一起。它的前面(或后面)是宏的参数名称。预处理程序使用调用该宏时提供的实际参数,并且根据该参数和##之后(或之前)的标记创建单个标记。如:
- #define printx(n) printf("%i\n",x##n);
- printx(20)——printf("%i\n",x20);
二、#import语句
.h->头文件(或包含文件)。
设置一组#import语句,将其输入到一个xxx.h的独立文件中,若需要则使用预处理程序指令:
#import "xxx.h"。
#import <……>导致预处理程序只在特殊的"system"头文件目录中寻找包含文件,当前目录不会被搜索。
#import "……"预处理程序在一个或者多个文件目录。
三、条件编译
通常用于创建可以在不同计算机系统上编译运行的程序,经常用来开关程序中的各种语句。
1、#ifdef、#endif、#else和#ifndef语句
从一个计算机系统上移植到另一个计算机系统上。
2、#if和#elif预处理程序语句
表达式结果非零——#else、#elif或#endif为止的所有后续行,否则跳过它们。
特殊运算符:#define (name) 也能用在#if语句中。
3、#undef语句
使一些已经定义的名称称为未定义的。
- Objective-C预处理程序
- objective-C [预处理程序]
- Objective-C基础—预处理程序
- Objective-C 学习笔记 12 预处理程序
- objective-c预处理
- Objective-C之成魔之路【13-预处理程序】
- 预处理程序Objective-C之成魔之路
- 看看预处理程序Objective-C怎么成魔的
- 预处理程序Objective-C之成魔之路
- 预处理程序Objective-C之成魔之路
- 预处理程序Objective-C之成魔之路
- 预处理程序Objective-C之成魔之路
- [学习笔记—Objective-C]《Objective-C 程序设计 第6版》第十二章 预处理程序
- [精通Objective-C]预处理器
- C语言-预处理程序
- C语言-预处理程序
- C语言-预处理程序
- C语言-预处理程序
- android离线地图源码
- Android Framework中的PolicyManager简介
- ldconfig
- 让电脑开口说话-内容包括任何英文单词和短语
- 3->oracle 后台进程详解
- Objective-C预处理程序
- POJ 3663 costume party
- 一个通用的Makefile(针对内核模块类-pro)
- cent os nfs
- 玩世不恭的简单生活
- 并查集——HDOJ 1213
- 微博有很多優於BBS的功能
- Parsing XML Files(用NSXMLParser解析xml文件)
- [Java]关于Null面对两个重载构造的选择的小题目