18394793333值多少钱,想出售这个测算手机号值多少钱

2007年6月 总版技术专家分月排行榜第三
2007年6月 VC/MFC大版内专家分月排行榜第一
2013年3月 C/C++大版内专家分月排行榜第三
本帖子已过去太久远了,不再提供回复功能。您的访问出错了(404错误)
很抱歉,您要访问的页面不存在。
1、请检查您输入的地址是否正确。
进行查找。
3、感谢您使用本站,1秒后自动跳转C语言的编译预处理命令解读
1.编译预处理
编译预处理是在编译前对源程序进行的预加工处理,根据源程序中的预处理命令对源程序做相应的处理工作。预处理命令是一种命令语句(如#define),它指示预处理程序如何修改源程序。该预处理工作由预处理程序模块负责完成,且对于程序员来说是不可见的。
预处理程序读入所有包含的文件以及待编译的源代码,然后生成源代码的预处理版本。在预处理版本中,宏和常量标识符已经全部被相应的代码和值替换掉了。如果源代码中包含条件预处理命令(如#if),那么预处理程序将先判断条件,再相应的修改源代码。
2.编译预处理的执行过程
在对源程序进行编译之前,预处理程序模块首先对源程序进行扫描,如果程序中有预处理命令,系统将自动引用预处理程序对源程序中的预处理部分进行分析和处理。处理之后再由编译程序对源程序进行正式编译,以形成目标代码。
3.预处理语句的特点
(1)预处理语句通常以“#”开始,语句末尾不加分号,以区别于C语句。
(2)它们可以出现在程序中的任何位置,其作用域自出现点到所在源程序的末尾。但一般书写源程序时,往往将预处理语句至于开头部分。
(3)预处理语句主要有“文件包含”、“宏替换”、“条件编译”3类。
A. 对包含文件,预处理程序要将被包含的文件之源代码嵌于被编译程序的相应位置,参加正式的编译以形成目标代码;
B. 对宏定义,预处理程序要对相应符号进行宏替换;
对于条件编译,预处理程序要根据条件确定源程序中的哪些部分要参加正式编译形成目标代码,哪些部分不形成目标代码。
&4. 宏定义命令(#define)
&& 宏定义是用宏定义命令#define定义的预处理。
宏定义分为无参宏定义和有参宏定义两种。
&& (1)无参宏定义又叫符号常量宏定义,其实质是用标识符来代替一串字符串。无参宏定义的一般格式是:
符号常量名&& 常量值
&&&&&&&&&&&
符号常量名一般用大写字母表示。预处理程序对符号常量的替换不作语法检查,只是原样替换。
& (2)有参宏定义的一般格式是:
宏名(参数表)&& 表达式
&&&&&&&&&&
例如,在源程序中要使用到求a,b中两个值中的较小者的函数,可在程序开头作下面的宏定义:
MIN(a,b)&& ( (a)&(b) ) ? (a) :
&&&&&&&&&&
在程序中则可以引用MIN(a,b)来表示取a、b中的较小值参加运算。
&& (3)宏定义的优点
&&&&&&&&&&
使用宏定义可以省去许多重复的输入工作。比如下列程序对输入格式做宏定义,就可以减少许多输入的麻烦。
P&& printf
D&& "%d\n"
F&& "%f\n"
void main(void)
&&& int x = 6, y
= 7, z = 8;
&&& float a =
3.56, b = 2.34, c = 5.65;
&&& P(D F, z,
&&&&&&&&&&&
由于宏定义可以一次定义,多次使用,并且宏名往往是见名知义,所以使用宏能够增强程序的可读性。同时,宏定义也可以进行嵌套,即先定义宏名,可以使用它再去定义新的宏名。比如在DSP2833x_Device.h中有如下的宏定义:
TARGET&& 1
//---------------------------------------------------------------------------
// User To Select Target Device:
DSP28_28335&&
TARGET&&&&
//此处为宏定义的嵌套#define&&
DSP28_28334&& 0
DSP28_28332&& 0
&& (4)宏定义中括号的作用
&&&&&&&&&在宏定义中,字符串内的形参通常用括号括起来,不仅如此,整个字符串也应该用括号括起来以避免出错。例如:
f(x)&& x*x + 2*x +1
主程序中如果有语句 m = 9*f(x);程序愿意是求
9(x2+2x+1)的值,由于宏定义只是简单的字符串的替换,上面的定义求出的就是&9*x*x
+2*x +1的值,显然这个结果不是我们想要的。因此,宏定义中的字符串也应该用括号括起来,正确的写法是:
f(x)&& (x*x +2*x +1)
5.文件包含命令(#include)&
&预处理指令#include的作用是将被包含的文件的源代码嵌于被编译程序的相应位置,以参与正式编译形成目标代码。
文件包含语句的格式是:
#include&&&&
或&&&&&#include&&&
“文件名”
(1)两种格式的区别
&&&&&&&如果#include语句中用&&括住文件名,则预处理程序按编译系统所在的文件缺省路径寻找文件名,这个缺省文件路径就是在进行C语言编译系统的安装时,按安装步骤提示形成的一个缺省路径。
如果#include语句中用“”括住一个含有路径的文件名,则预处理程序首先搜索该路径所指目录,若未找到所指文件,则再到编译系统的缺省设定目录下搜索。
因此,若想将自己所写的另一段源程序嵌入目前被编译的程序中,应该注意被嵌入的源程序位于哪一个目录下。一般情况下,最好将所有的源程序放在同一目录下,在#include语句中用双引号“”指明路径,在编译时就不会发生找不到包含文件的错误。
(2) .h头文件
头文件是一种文本文件,使用文本编辑器将代码编写好之后,以扩展名.h保存就行了。头文件中一般放一些重复使用的代码,例如函数声明,变量声明,常数定义,宏的定义等等。当使用#include语句将头文件引用时,相当于将头文件中的所有内容,复制到#include处。#include有两种写法形式,分别是:
#include&&&
直接到系统指定的某些目录下去找某些头文件
#include&&&
先到当前被编译的源程序文件所在文件夹中去找,再到系统指定的某些目录下去找某些头文件
(3).h头文件中的内容
任何一个C程序都是由一个主函数main(
)和一些自定义函数及对库函数的调用构成的。程序的执行从主函数开始,主函数结束。在程序中若有对某一个函数的调用,只要被调用函数源代码在主调函数的源代码后面,则需用#include语句嵌入相应的文件(如stdio.h)或者在主调函数中先进行函数声明。头文件.h中的代码是相应函数的原型及符号常量等进行的说明和定义;而库函数的函数体代码则是以目标代码的形式存于库中的,在进行连接时方连入执行代码中。
(4)文件包含可以包含的文件类型
由于文件包含命令常放在文件的开头,所以常称这些文件为头文件,并以.h作为文件扩展名。由此可知,包含文件可以包含其他任何扩展名的文本文件,比如.c的文件。以下就是一个包含.c扩展名的简单例子:
void main(void)
printf("input a and b:");
printf("%d\n",fe(a,b));
文件file.c的内容是:
fe(int x, int y)
return(x & y ? x : y);
文件包含不仅可以包含任何扩展名的文本文件,而且这些文件的包含可以嵌套,即包含文件可以嵌套,只是需要注意嵌套文件的顺序。
6. 条件编译语句
条件编译就是编译系统按照不同的条件对不同的程序部分进行编译,因而产生不同的目标代码文件。也就是说,条件编译是在一定条件下才对某些程序段进行编译,不满足条件的程序段就不进行编译。这样做的好处是可编译出适应不同环境条件的目标代码文件,使得程序适应于不同情况,同时缩短代码的长度,提高程序的可读性和执行效率。
&& 条件编译分两类,一类是以是否定义某一符号常量作为编译条件;另一类是以表达式的值是否为真作为编译条件。
第一类条件编译语句的格式是:
&这类条件编译语句的功能是:若所指符号常量名已经定义,则对程序段1进行编译,否则对程序段2进行编译。
比如在电机控制中的target.h文件内容如下:
Description:&
Target device selection
=====================================================================================
-------------------------------------------------------------------------------------
&04-15-2005
Version 3.20
------------------------------------------------------------------------------*/
#ifndef DSP_TARGET&
------------------------------------------------------------------------------
Following is the selection
list of the target choices.
Note that the F2808 also
represents the F2801 and F2806
and F2812 also represents the
F2810 and F2811 devices.
------------------------------------------------------------------------------
#define F28335 & 1
#define F2812 & 2
#define UNKNOWN 4
#ifdef TARGET_IS_F28335
#define DSP_TARGET F28335
#ifdef TARGET_IS_F2812
#define DSP_TARGET F2812
------------------------------------------------------------------------------
This line sets the target to
one of the available choices.
------------------------------------------------------------------------------&
#ifndef DSP_TARGET &
#error &Critical: A target must be
defined Please define a target in &the \
CCS Build Options/Compiler Tab/Preprocessor/ Symbol
#endif &//
第二类条件编译语句的格式是:
&这类条件编译语句的功能是:若表达式为真,则编译程序段1,否则编译程序段2。
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

我要回帖

更多关于 测算手机号值多少钱 的文章

 

随机推荐