c语言难不难学,数据结构c语言版难不难学

首页 > 教育培训 > 作者:YD1662023-06-20 02:41:54

宏与 const 变量

如果想定义一个非常简单的常量值,你有两种选择:

static const int my_constant = 5;// 或者#define MY_CONSTANT 5

二者的不同之处在于,前者是一个真正的变量,而后者是一个复制粘贴的行内表达式。

“常量表达式”实际上非常实用,因此常常被定义为宏。而变量则更适合更大或更复杂的值,如结构实例。

c语言难不难学,数据结构c语言版难不难学(13)

宏与内联函数

宏可以有参数,并扩展为 C 代码。

相较于函数,宏的优势在于:

缺点:

// 不推荐这种写法:#define MY_MACRO(x) x x// 应该写成:#define MY_MACRO(x) ((x) (x))

除非你需要多种泛型,否则可以直接定义静态内联函数(static inline function),这样就可以兼具二者的优点。内联表示,函数中的代码应该直接编译到使用的地方,而不是被调用。你可以将静态内联函数放在头文件中,就像宏一样。

,
上一页1234末页

栏目热文

文档排行

本站推荐

Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.