我开始探索 Ruby 的基础,它是 C,
printf('%%\\');
上面的代码在 C 中是否允许?
#include <stdio.h>
int main(void) {
printf('%%\\');
return 0;
}
6行。请下次尝试。它会产生运行时错误。
所以不,这是不允许的。你真的要问这个吗?
如果您不想在本地进行/手头没有编译器/其他任何原因,我建议您使用 ideone 和 codepad 快速测试。
编辑:
看到另一个答案,我认为我应该注意到
#include <stdio.h>
int main(void) {
printf("%d", '%%\\');
return 0;
}
非常好,打印 2434396。我只是不想让你知道单引号是非法的。
不,不允许使用该代码。
在 Ruby 中,单引号用于编写字符串文字,即字符串类型的值。在 C'%%\\'
中具有 int 类型。由于printf
期望字符串 ( char*
) 作为其第一个参数,'%%\\'
因此不是 . 的有效第一个参数printf
。