Compiling code at runtime

MalikGames wants C, not C++.
C can be compiled, it can also be interpreted, and it can even be made “safe” (by inserting read/write barriers before/after each pointer dereference)
Pointers could also be “smart” and carry size/block information, so you wouldn’t read/write outside allocated blocks of memory.

I would recommend designing the runtime system you want, first, and figure out how to interact with the Unreal engine. You’d probably need a system that ties into the Blueprint/Kismet level, rather than the low-level C/C++ API.
You would want to use mechanical/automatic tools to generate the “headers” for each game module, and the bindings necessary from your runtime to the Kismet system.
Then build an interpreted C parser where you just run the AST tree as your “script.”
Once all of that works, you can try JIT generating code out of the AST tree to speed up the code execution – but you’d still have to live with the runtime performance overhead of going through the Kismet interface.

One problem with JIT code generation is that the iOS platform doesn’t allow any kind of runtime code generation. If you want to target mobile, you’re pretty much stuck with just interpreting the AST, or maybe you can get some more performance out of turning it into a “threaded” bytecode interpreter (which, confusingly, has nothing to do with multi-threading – look it up.)

This is of course tons of work. If you really want C syntax, then that’s what you have to do. If you want runtime scriptability, LUA seems like a better choice, even though I strongly dislike it as a language. It’s super easy to integrate with any kind of host application, there are reasonable tools for it, and it underpins pretty successful game platforms like … all of Roblox.