欢迎来到千学网!
您现在的位置:首页 > 实用文 > 其他范文

c语言return的用法和搭配

时间:2023-05-05 08:12:11 其他范文 收藏本文 下载本文

这次小编给大家整理了c语言return的用法和搭配,本文共8篇,供大家阅读参考。

c语言return的用法和搭配

篇1:c语言return的用法和搭配

在C语言中通过函数实现模块化程序设计思想,即用函数实现功能模块的定义,然后通过函数之间的调用来实现程序功能。因此函数有主调函数和被调函数。参数是主调函数和被调函数进行信息通信的接口,在函数的`定义和说明语句中,我们将函数名后面括号中的参数称为形式参数,简称“形参”,在主调函数的调用语句中函数名后面括号中用的参数称为实际参数,简称“实参”。当函数被调用时实参要向形参传递数据,函数调用并完成一定的功能后也要向主调函数返回一些数据。

篇2:return to的用法和搭配

She's planning to return to work once the children start school.

她正计划孩子一入学就恢复上班。

The doctor may allow her to return to work next week.

医生也许会允许她下周回去上班。

On Monday he would have to return to his regular duties.

星期一,他就得回去正常上班了。

They are hoping to return to power.

他们希望重掌政权。

The fish return to the river as adults in order to breed.

这种鱼长成以后回到河中产卵。

篇3:return的用法和搭配程序

二、及物动词 vt.

1、还,归还;送回[(+to)][O1]

Have you returned the novel to the library?那本小说你还给图书馆了吗?

2、回答,回报;报答

We decided to return blow for blow.我们决定以牙还牙。

3、选举,选出[(+to)]

4、【律】(陪审团)正式宣布(裁决)

5、获得,产生(利润等)

The performance returned $2,000 over expenses.这场演出除去开支赢余元。

6、报告;申报

7、反射(光、声等)

8、回答说;反驳道

篇4:return的用法

return用法:

1“返回”,相当于“go back / get back / come back..

如:Ann will visit you when he returns to London.

(当“返回”时是不及物动词,先加to才可再加地点。另外,return已含有back的意思,后不可再跟back.)

2“归还”,相当于“give back”如:I have returned the dictionary.

(当“归还”时是及物动词,后直接加物,不加to. 同样不可再跟back.)

You should return the piano to Dick on time. (后接有人时,方可加to)

希望上面老师对return用法知识的讲解,同学们对return用法能很好的掌握,并很好的备战考试工作。

篇5:C语言define用法详解

#define是C语言中提供的宏定义命令,其主要目的是为程序员在编程时提供一定的方便,并能在一定程度上提高程序的运行效率,但学生在学习时往往不能 理解该命令的本质,总是在此处产生一些困惑,在编程时误用该命令,使得程序的运行与预期的目的不一致,或者在读别人写的程序时,把运行结果理解错误,这对 C语言的学习很不利,

1 #define命令剖析

1.1  #define的概念

#define命令是C语言中的一个宏定义命令,它用来将一个标识符定义为一个字符串,该标识符被称为宏名,被定义的字符串称为替换文本。

该命令有两种格式:一种是简单的宏定义,另一种是带参数的宏定义。

(1)  简单的宏定义:

#define  <宏名> <字符串>

例:  #define PI 3.1415926

(2) 带参数的宏定义

#define  <宏名>(<参数表>)  <宏体>

例: #define  A(x) x

一个标识符被宏定义后,该标识符便是一个宏名。这时,在程序中出现的是宏名,在该程序被编译前,先将宏名用被定义的字符串替换,这称为宏替换,替换后才进行编译,宏替换是简单的替换。

1.2 宏替换发生的时机

为了能够真正理解#define的作用,让我们来了解一下对C语言源程序的处理过程。当我们在一个集成的开发环境如Turbo C中将编写好的源程序进行编译时,实际经过了预处理、编译、汇编和连接几个过程,

源程序预处理器修改后的源程序编译器汇编程序汇编器可重定位的目标程序连接器可执行的目标程序图1 C语言的编译过程

其中预处理器产生编译器的输出,它实现以下的功能:

(1)    文件包含

可以把源程序中的#include 扩展为文件正文,即把包含的。h文件找到并展开到#include 所在处。

(2)    条件编译

预处理器根据#if和#ifdef等编译命令及其后的条件,将源程序中的某部分包含进来或排除在外,通常把排除在外的语句转换成空行。

(3)    宏展开

预处理器将源程序文件中出现的对宏的引用展开成相应的宏 定义,即本文所说的#define的功能,由预处理器来完成。

经过预处理器处理的源程序与之前的源程序有所有不同,在这个阶段所进行的工作只是纯粹的替换与展开,没有任何计算功能,所以在学习#define命令时只要能真正理解这一点,这样才不会对此命令引起误解并误用。

2 #define使用中的常见问题解析

2.1 简单宏定义使用中出现的问题

在简单宏定义的使用中,当替换文本所表示的字符串为一个表达式时,容易引起误解和误用。如下例:

例1  #define  N  2+2

void main

{

int  a=N*N;

printf(“%d”,a);

}

(1) 出现问题:在此程序中存在着宏定义命令,宏N代表的字符串是2+2,在程序中有对宏N的使用,一般同学在读该程序时,容易产生的问题是先求解N为2+2=4,然后在程序中计算a时使用乘法,即N*N=4*4=16,其实该题的结果为8,为什么结果有这么大的偏差?

(2)问题解析:如1节所述,宏展开是在预处理阶段完成的,这个阶段把替换文本只是看作一个字符串,并不会有任何的计算发生,在展开时是在宏N出现的地方 只是简单地使用串2+2来代替N,并不会增添任何的符号,所以对该程序展开后的结果是a=2+2*2+2,计算后=8,这就是宏替换的实质,如何写程序才 能完成结果为16的运算呢?

(3)解决办法:将宏定义写成如下形式

#define  N  (2+2)

这样就可替换成(2+2)*(2+2)=16

2.2 带参数的宏定义出现的问题

在带参数的宏定义的使用中,极易引起误解。例如我们需要做个宏替换能求任何数的平方,这就需要使用参数,以便在程序中用实际参数来替换宏定义中的参数。一般学生容易写成如下形式:

#define  area(x)  x*x

这在使用中是很容易出现问题的,看如下的程序

void main()

{

int  y=area(2+2);

printf(“%d”,y);

}

按理说给的参数是2+2,所得的结果应该为4*4=16,但是错了,因为该程序的实际结果为8,仍然是没能遵循纯粹的简单替换的规则,又是先计算再替换 了,在这道程序里,2+2即为area宏中的参数,应该由它来替换宏定义中的x,即替换成2+2*2+2=8了,

那如果遵循(1)中的解决办法,把2+2 括起来,即把宏体中的x括起来,是否可以呢?#define  area(x) (x)*(x),对于area(2+2),替换为(2+2)*(2+2)=16,可以解决,但是对于area(2+2)/area(2+2)又会怎么样 呢,有的学生一看到这道题马上给出结果,因为分子分母一样,又错了,还是忘了遵循先替换再计算的规则了,这道题替换后会变为 (2+2)*(2+2)/(2+2)*(2+2)即4*4/4*4按照乘除运算规则,结果为16/4*4=4*4=16,那应该怎么呢?解决方法是在整个 宏体上再加一个括号,即#define  area(x) ((x)*(x)),不要觉得这没必要,没有它,是不行的。

要想能够真正使用好宏定义,那么在读别人的程序时,一定要记住先将程序中对宏的使用全部替换成它所代表的字符串,不要自作主张地添加任何其他符号,完全展 开后再进行相应的计算,就不会写错运行结果。如果是自己编程使用宏替换,则在使用简单宏定义时,当字符串中不只一个符号时,加上括号表现出优先级,如果是 带参数的宏定义,则要给宏体中的每个参数加上括号,并在整个宏体上再加一个括号。看到这里,不禁要问,用宏定义这么麻烦,这么容易出错,可不可以摒弃它, 那让我们来看一下在C语言中用宏定义的好处吧。

3  宏定义的优点

(1)  方便程序的修改

使用简单宏定义可用宏代替一个在程序中经常使用的常量,这样在将该常量改变时,不用对整个程序进行修改,只修改宏定义的字符串即可,而且当常量比较长时, 我们可以用较短的有意义的标识符来写程序,这样更方便一些。我们所说的常量改变不是在程序运行期间改变,而是在编程期间的修改,举一个大家比较熟悉的例 子,圆周率π是在数学上常用的一个值,有时我们会用3.14来表示,有时也会用3.1415926等,这要看计算所需要的精度,如果我们编制的一个程序中 要多次使用它,那么需要确定一个数值,在本次运行中不改变,但也许后来发现程序所表现的精度有变化,需要改变它的值, 这就需要修改程序中所有的相关数值,这会给我们带来一定的不便,但如果使用宏定义,使用一个标识符来代替,则在修改时只修改宏定义即可,还可以减少输入 3.1415926这样长的数值多次的情况,我们可以如此定义 #define  pi  3.1415926,既减少了输入又便于修改,何乐而不为呢?

(2) 提高程序的运行效率

使用带参数的宏定义可完成函数调用的功能,又能减少系统开 销,提高运行效率。正如C语言中所讲,函数的使用可以使程序更加模块化,便于组织,而且可重复利用,但在发生函数调用时,需要保留调用函数的现场,以便子 函数执行结束后能返回继续执行,同样在子函数执行完后要恢复调用函数的现场,这都需要一定的时间,如果子函数执行的操作比较多,这种转换时间开销可以忽 略,但如果子函数完成的功能比较少,甚至于只完成一点操作,如一个乘法语句的操作,则这部分转换开销就相对较大了,但使用带参数的宏定义就不会出现这个问 题,因为它是在预处理阶段即进行了宏展开,在执行时不需要转换,即在当地执行。宏定义可完成简单的操作,但复杂的操作还是要由函数调用来完成,而且宏定义 所占用的目标代码空间相对较大。所以在使用时要依据具体情况来决定是否使用宏定义。

形式参数不能用带引号的字符串替换。

但是,如果在替换文本中,参数名以#作为前缀则结果将被扩展为 由 实际参数 替换 此实际参数的带引号的字符串。

例如,可以将它与字符串连接运算结合起来编写一个调试打印宏:

#define dprint(expr) printf(#expr “ = %\n”,expr)

使用语句 dprint(x/y);

调用宏时,该宏将被扩展为:printf(“x/y”“ = %\n”,x/y);

其中的字符串被连接起来了,这样便等价于printf(“x/y = %\n”,x/y);

在实际参数中,每个双引号 “ 将被替换为 \” ;反斜杠\将被替换为\\,因此替换后的字符串是合法的字符串常量。

预处理运算符 ## 为宏扩展提供了一种连接实际参数的手段。如果替换文本中的参数与 ## 相邻,则该参数将被实际参数替换,##与前后的空白符将被删除,并对替换后的结果重新扫描。

例如,下面定义的宏paste用于连接两个参数

#define paste(front, back) front ## back

因此,宏调用past(name,1)的结果将建立记号name1.

c语言中没有swap这个函数,C语言不支持重载,也没有模版的概念,所以对于每一种类型,都要写出相应的swap,如

intSwap  (int  *,  int  *);

longSwap  (long  *,  long  *);

stringSwap  (char  *,  char  *);

篇6:关于return的用法及解释

return可以用作动词

return的基本意思是“回到原来的位置或状态”,可指人、物回到某处,也可指某人把某物送还,归还给某人,还可指病痛、情绪等的复发、状态的恢复、季节的再次来临等。

return的现在进行时可表示按计划或安排将要发生的动作,此时须有表示将来的时间状语或特定的上下文。

return用作及物动词时,可接名词、代词或that从句作宾语,还可接双宾语,其间接宾语可转化为介词to的宾语。

return用作动词的用法例句

We must return to Dalian within three days.我们必须在3日内回到大连。

What time does your husband return from work?你丈夫什么时候下班回家?

Don't forget to return my keys.别忘了还我钥匙。

return可以用作名词

return用作名词的基本意思是“返回,回来,恢复”,指重新回到或返回原来的位置或状态,可用作可数名词,也可用作不可数名数。引申还可作“归还”“回报”解,是不可数名词。

return还可作“利润”“收益”解,是可数名词。

return用作名词的用法例句

I'm afraid I have to insist on the return of my books at once.对不起,我要求你立即归还我的书。

The hope of his safe return diminished as time passed by.随着时间的推移,他平安返回的希望越来越渺茫。

I gave him some books in return for his assistance.我给了他一些书,作为对他所提供的帮助的回报。

篇7:关于return的用法及解释

v. 回来,退还,重现,回报

n. 回来,归还,恢复,利润

变形:过去式: returned; 现在分词:returning; 过去分词:returned;

return的例句

1、I will return, find you, love you, marry you and live without shame.

我会回去,找到你,爱你,娶你,活的光明正大。《赎罪》

2、Ellery's return will help to chase away some of the gloom.

埃勒里的归来可以驱散一些抑郁的情绪。

3、Return the enclosed Donation Form today in the prepaid envelope provided.

请于今日将随函附上的捐款表格用所提供的邮资预付的信封寄回。

篇8:return的用法和例句

return的用法1:return的基本意思是“回到原来的位置或状态”,可指人、物回到某处,也可指某人把某物送还,归还给某人,还可指病痛、情绪等的复发、状态的恢复、季节的再次来临等。

return的用法2:return的现在进行时可表示按计划或安排将要发生的动作,此时须有表示将来的时间状语或特定的上下文。

return的用法3:return用作及物动词时,可接名词、代词或that从句作宾语,还可接双宾语,其间接宾语可转化为介词to的宾语。

return的用法4:return还可用作系动词,意思是“恢复”“回来”,后可接名词或形容词作表语。

return的用法5:return是瞬间动词,不能与表示一段时间的状语连用。

return的用法6:return用作名词的基本意思是“返回,回来,恢复”,指重新回到或返回原来的位置或状态,可用作可数名词,也可用作不可数名数。引申还可作“归还”“回报”解,是不可数名词。

return的用法7:return还可作“利润”“收益”解,是可数名词。

return的用法和例句

关于英语介词的用法及短语搭配

英语学习:At的基本含义及其搭配用法

speak的用法和例句

agree的用法和例句

busy的用法和例句

glass的用法和例句

colour过去式和用法例句

take的短语和用法

暨的意思和用法

《c语言return的用法和搭配(合集8篇).doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式

点击下载本文文档