了解宏和函数,定义宏函数

发布于 科技 2024-06-11
7个回答
  1. 匿名用户2024-01-29

    1.宏是在编译之前编译的,即它们用宏体替换宏名称然后编译,而函数显然是在编译后和执行时调用的。 因此,宏占用编译时间,而函数在执行时需要时间。

    这句话单独解释:

    宏在编译前进行编译,即先将宏名称替换为宏体,然后进行编译""

    说明:假设在编译前定义 **: define max len 10(10 是宏体,max len 是宏名称),也就是说,在预编译的时候,** 中 max len 出现的所有地方都会在下一次 **编译之前替换为 10,这个替换工作实际上是在编译之前进行的。

    函数显然是在编译后调用的,当它们被执行时""

    解释:这在实际调用函数调用时是显而易见的,因为只有在执行函数调用时,才能根据特定条件决定调用哪个函数。

    因此,宏占用编译时间,而函数在执行时需要时间。 ""

    解释:有了上面的解释,估计这句话就知道了,书的作者也会从他的句子中算作预编译的一部分。

    2.宏参数不占用内存空间,因为它们只是替换字符串,而调用函数时的参数传递是特定变量之间的信息传递,而表单参数作为函数的局部变量,显然占用了内存。

    同样,单独解释:

    宏参数不占用内存空间,因为它们仅替换字符串""

    解释:假设有一个宏定义定义 max(a, b) (a) >b) ?a) :

    b) max(a, b) 出现在 ** 中(在初始定义之外)的所有位置都改为 (a) >b) ?a) :b),例如,如果 ** 中有类似 c = max(1, 3) 的语句,它将变为 c = (1) >3) ?

    1) :3),这是直接替换,不产生中间变量,所以没有必要为它分配空间......

    调用函数时的参数传递是特定变量之间的信息传递,而形式参数作为函数的局部变量,显然会占用内存。 "

    说明:调用函数时,需要在堆栈上为每个形式参数分配空间,然后将参数的值复制到其中,并在函数内部使用此参数,函数结束后参数的空间会自动释放,这就是为什么参数的更改不能更改参数的值的原因。

  2. 匿名用户2024-01-28

    宏是直接的文本替换,例如:

    #define sum(a,b) a+b

    当 sum(1,2) 在编译过程中被替换为 a+b 函数时,情况并非如此,并且在运行时会调用 int sum(int a, int b)。

    例如,sum(1,1)*2;

    这样的宏调用将替换为 1+1*2,从而得到 3

    但是 sum(1,1)*2 没有这个问题,会先调用函数(实际在函数编译后执行指令)并返回 2 in 和 2 乘法。

  3. 匿名用户2024-01-27

    [定义]:

    宏(计算机术语):

    在计算机科学中,宏是批处理的术语。 一般来说,宏是一种规则或模式,或语法替换,它描述了如何根据预定义的规则将特定输入(通常是字符串)转换为相应的输出(通常是字符串)。 这种替换发生在预编译时,称为宏。

    功能(计算机术语):

    为特定目的编写单独的存储小程序块也可以称为方法。

    纠错]:宏就是宏,函数就是函数,这是两个不同的概念,一般我们只说宏。

  4. 匿名用户2024-01-26

    s(x) 是带有参数的宏。 也就是说,这里的 s(x) 是 pt*x*x,其中 pt 等于。 然后 s(a+b) 将被替换为 pt*(a+b)*(a+b)。 即。

  5. 匿名用户2024-01-25

    所谓宏,简单来说,就是为了后期编程的简单性,相当于给一个非常大的程序函数起了个名字,用的时候可以直接用到,非常方便!!

  6. 匿名用户2024-01-24

    1. Macro(英文:macro)是批处理的术语。

    2.计算机科学中的宏是一种抽象,它根据一系列预定义的规则替换了某种文本模式。 解释器或编译器在遇到宏时会自动替换此模式。 对于编程和翻译语言,宏在编译时出现,用于执行宏的工具通常称为宏。

    3. 术语宏也经常用于许多类似的上下文中,它们源自宏的概念,其中包括键盘宏和宏语言。 绝大多数情况下,“宏”一词的使用意味着将一个小命令或操作转换为一系列指令。

  7. 匿名用户2024-01-23

    这取决于你写什么。 与函数相比,宏具有明显的优势,因为它比函数更有效(且更快),因为宏可以直接位于源中,而调用函数需要额外的开销。 但是,宏通常很小,无法处理大型、复杂的结构,而函数可以。

    另外,宏需要逐行,所以每次出现宏的时候,宏的**都会复制一次,这样你的程序就会变大,使用一个函数不会让你的程序变大。

    一般来说,小的、可重复的段应该用宏代替,这将使程序运行得更快; 当任务复杂且需要多行实现时,或者当程序要求尽可能小时,应使用函数。

相关回答
14个回答2024-06-11

dim tarold

private sub worksheet_change(byval target as range) >>>More

8个回答2024-06-11

sheets("原始数据").选择以选择原始数据表。

columns("c:bk").选择“C:BK”列。 >>>More

10个回答2024-06-11

通过功能单调性的定义证明:

设 f(x)=x +2x,x [0,+ >>>More

14个回答2024-06-11

你能说清楚吗,我不知道你的意思。 是否要在 main 函数中调用一个函数,然后不知道如何定义被调用的函数? 如果是这样的话,我可以告诉你。 >>>More

11个回答2024-06-11

f(x)-g(x)=f(-x)-g(-x)=x 2+2x-3 关节已知,得到解。 >>>More