brainfuck
v2.7.3
Brainfuck的口译员写在C中。
brainfuck [-veh] file...
-e --eval run code directly
-v --version show version information
-h --help show a help message.
可以通过没有参数来访问交互式控制台。
我们还提供C API:
#include <stdio.h>
#include <stdlib.h>
#include <brainfuck.h>
int main () {
BrainfuckState * state = brainfuck_state ();
BrainfuckExecutionContext * context = brainfuck_context ( BRAINFUCK_TAPE_SIZE );
BrainfuckInstruction * instruction = brainfuck_parse_string ( ",+++++." );
brainfuck_add ( state , instruction );
brainfuck_execute ( state -> root , context );
brainfuck_destroy_context ( context );
brainfuck_destroy_state ( state );
return EXIT_SUCCESS ;
}示例/目录包含大量的Brainfuck示例程序。我们试图在可能的情况下归因这些程序的原始作者。
通过在命令提示符中运行以下代码下载源代码:
$ git clone https://github.com/fabianishere/brainfuck.git或者只需将源代码的副本作为zip文件。
创建构建目录。
$ mkdir build
$ cd buildBrainfuck需要CMAKE和C编译器(例如Clang或GCC)才能运行。它也取决于Libedit,它在大多数Linux发行版的主要存储库中可用(例如Debian/Ubuntu上的Libedit-Dev),并带有MacOS Xcode命令行工具。然后,只需创建makefiles:
$ cmake ..最后,使用您选择的建筑系统(例如制造)来构建它:
$ make构建完成后,您可以将二进制文件安装到本地系统(有关安装前缀的信息,请参见CMAKE_INSTALL_PREFIX):
$ make install另外,您可以直接运行解释器而无需安装:例如:
$ ./brainfuck ../examples/hello.bf该代码以Apache许可证2.0版发布。请参阅LICENDE.TXT。
Fabian Mastenbroek https://github.com/fabianishere
aliclubb https://github.com/aliclubb
diekmann https://github.com/diekmann
SevenBits https://github.com/SevenBits
Alex Burka https://github.com/durka
outis https://github.com/outis
rien333 https://github.com/rien333
boweiliu https://github.com/boweiliu
Rotartsi https://github.com/ROTARTSI82
Saket Upadhyay https://github.com/Saket-Upadhyay
outis https://github.com/outis
Jalmari91 https://github.com/Jalmari91
Alok Singh https://github.com/alok
Lasse Damsgaard Skaalum https://github.com/humleflue