类型,性质和意义(什么)" #call"在c ++中

时间:2015-08-28 04:31:23

标签: c++ macros c-preprocessor

我正在尝试研究一个用于CUDA的简单MPI代码。我遇到了这条线。

cerr << "MPI error calling \""#call"\"\n"; \

什么是#call?与CUDA,C ++或MPI有关吗?

1 个答案:

答案 0 :(得分:3)

这是宏定义的一部分。 call是一个宏参数,可能是函数的名称。 #运算符将其操作数转换为字符串。所以#call是一个带有函数名称的字符串。

相邻的字符串是连接的,因此名称将与"MPI error calling \"""\"\n"合并,并在cerr上输出。

#运算符是C / C ++预处理器的一部分,字符串文字串联也是两种语言共有的(但不是预处理器本身的一部分)。所以不,它对CUDA,C ++或MPI来说并不特殊。