有一些解决问题的网站,例如topcoder.com和SPOJ。
我希望对于类似的用例(人们向我发送C++程序文件),可以进行一些限制。
其中之一是:
我可以限制人们使用g++或clang。这些事情正在Linux上完成。
其中之一是:
- “不允许使用内联汇编”
我可以限制人们使用g++或clang。这些事情正在Linux上完成。
% gcc -Dasm=error -D__asm__=error
asm
,__asm__
的宏。是否允许遮蔽内置关键字?我能否像禁止函数调用(如 "system()")一样做同样的事情?这是安全的解决方案吗 - 没有绕过它(黑客)的方法吗? - Grzegorz Wierzowiecki#undef asm
就可以了。虽然这很容易被发现。 - Alnitak看起来你正在寻找-fno-asm
标志。
虽然它看起来只是执行asm
而不是执行__asm__
,所以可能需要添加一个-D__asm__=something_that_will_error
。
还要查看-fno-gnu-keywords
以关闭C++中的asm
。
__asm__
。 - Alnitak