我有一个像这样的awk代码:
val = and($1, 0x03FFFFFF) + $2
Run Code Online (Sandbox Code Playgroud)
我写了这样的Perl版本:
$val = ($1 && 0x03FFFFFF) + $2;
Run Code Online (Sandbox Code Playgroud)
这条线是一样的吗?
#include <stdio.h>
#define STR(x) #x
#define STR2(x) STR(x)
#define LINE_FILE ("Line " STR2(__LINE__) " of file " STR2(__FILE__))
int main(void)
{
const char *str = LINE_FILE;
printf("%s\n", str);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
这是唯一的定义方案,将使STR(x)打印实际的LINE和FILE ???