C-Sim Roadmap
C-Sim is a C memory management simulator, aimed at students and lecturers. Lecturers can use it for interactive help during classes, while students can try it at home.
This is the list of features that C-Sim should support. The status now is: feature-complete.
Feature | Example | Implemented | Version |
Snapshots | Interactive, traceable program. | Yes | 1.1 |
Types supported: int | int x [= 2] | Yes | 0.41 |
Types supported: char | char ch [= 'A'] | Yes | 0.41 |
Types supported: double | double d [= 9.9] | Yes | 1.1 |
Types supported: char[] | char str[5] | Yes | 1.1 |
Types supported: constant char[] | char * str = "hola"; | Yes | 1.1 |
Architecture supported: big endian | int x = 257; [0x0102] | Yes | 0.41 |
Architecture supported: little endian | int x = 257; [0x0201] | Yes | 1.2 |
sizeof() operator | printf(sizeof(x)) | Yes | 1.1 |
Different memory width architectures | sizeof(int) == 32 | 64 | Yes | 1.2 |
Variable creation | int x [= 5] | Yes | 0.41 |
Simple pointer creation | int * ptr [= &x] | Yes | 0.41 |
Simple pointer derreference | *ptr = 5 | Yes | 0.41 |
Complex pointer creation | int ** ptr2 [= &ptr] | Yes | 1.1 |
Complex pointer derreference | **ptr2 = 5 | Yes | 1.1 |
Variable in heap | int * ptr = new int; | Yes | 0.41 |
Definition of variable in heap | int * ptr = new int(5); | Yes | 1.2 |
Memory deallocation - C++ | delete ptr | Yes | 0.41 |
Memory deallocation - C | free( ptr ) | Yes | 1.1 |
C++ references | int &ref = x; | Yes | 0.41 |
C-Sim's web.