Almost all computer languages can handle system memory. Memory management is the process of controlling and coordinating computer memory, assigning portions called blocks to various running programs to optimize overall system performance. When a variable gets assigned in memory in one program, that memory location cannot be used by another variable or another program. So, the C language gives us a technique of allocating memory to different variables and programs.