We are currently working on new rules for what content should and shouldn't be allowed on this website, and are looking for feedback! See Esolang:2026 topicality proposal to view and give feedback on the current draft.
CFuck
Jump to navigation
Jump to search
CFuck is, like its name, a C extension to brainfuck. It is invented by User:None1.
Data structure
It also has a byte queue.
Commands
All the original commands are the same, but there are extra commands:
| Command | Description | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
* |
Push a byte (current cell) onto the queue | ||||||||||||
% |
Pop a byte and store it in current cell | ||||||||||||
@"DllName"FunctionName(arguments)ReturnType |
This command is very complicated, it first loads DllName and gets the function FunctionName, then it passes the arguments to the function, then it treats the return value as ReturnType and breaks it into bytes and pushes it onto the queue.
For instance, if queue contains |
Examples
Wait for a key
@"msvcrt.dll"getch()v
Wait for a key and print it
@"msvcrt.dll"getch()b%.
Message box
********++++++++[>++++++++<-]>+***>*<***>*****@"user32.dll"MessageBoxA(Lssi)v
It creates a message box with its title and content both AAA.