我读了很多关于PTHREAD_MUTEX_INITIALIZER的文章,我明白它做了什么,但是,我无法理解它是如何做到的?一个宏如何通过将其名称分配给该变量来初始化一个变量。PTHREAD_MUTEX_INITIALIZER,它是什么?
我所知道的关于宏的是,他们可以用同样的功能,如:
#define MAX(a, b) ((a) > (b) ? (a) : (b))
现在我们可以使用这个宏像一个函数:MAX(A,B)。
但我们如何编写能在方式使用宏其PTHREAD_MUTEX_INITIALIZER使用,如:
int x = Macro_Name;
那么x会被初始化为特定值(当一次PTHREAD_MUTEX_INITIALIZER是一个互斥量初始化像分配给它)
请帮我理解这个问题。提前致谢。