MemC FAQ
What C features does MemC support?
MemC supports int, char, pointers (* and &), fixed-size arrays, basic arithmetic, if/while/for, function calls, malloc, calloc, free, and printf. No structs, floats, scanf, recursion, macros, or typedefs in v1.
How do I run MemC?
Start the backend: cd backend/memc && python app.py (or python3 app.py). It runs on port 5000. Then open the MemC page in your browser. The Next.js app runs on port 3000.
Why do I see 'Failed to connect to MemC backend'?
The Python Flask backend must be running on port 5000. Start it with python app.py from the backend/memc directory.
What is use-after-free?
Use-after-free is accessing memory after it has been freed. It causes undefined behavior and security vulnerabilities. MemC detects and reports it.
What is double-free?
Double-free is calling free() twice on the same pointer. It corrupts the heap allocator. MemC detects and explains it.
What is a memory leak?
A memory leak occurs when you allocate memory with malloc but never free it. MemC warns about blocks that remain allocated at program end.