C প্রোগ্রামিং ও Memory Allocation

Submitted by administrator on Mon, 01/02/2012 - 16:14

So far you've learned how to declare and reserve a piece of memory space before it is used in your program. For instance, you have to specify the size of an array in your program (or the compiler has to figure out the size if you declare an unsized array) before you assign any data to it at runtime. In this lesson you'll learn to allocate memory space dynamically when your program is running. The four dynamic memory allocation functions covered in this lesson are

    The malloc() function
    The calloc() function
    The realloc() function
    The free() function




Summary

  •     In C, there are four functions that can be used to allocate, reallocate, or release a block of memory space dynamically at runtime.
  •     The malloc() function allocates a block of memory whose size is specified by the argument passed to the function.
  •     The free() function is used to free up a block of memory space previously allocated by the malloc(), calloc(), or realloc() function
  •     The calloc() function can do the same job as the malloc() function. In addition, the calloc() function can initialize the allocated memory space to 0.
  •     The realloc() function is used to reallocate a block of memory that has been allocated by the malloc() or calloc() function.
  •     If a null pointer is passed to the realloc() function as its first argument, the function acts like the malloc() function.
  •     If the second argument of the realloc() function is set to 0, the realloc() function is equivalent to the free() function that releases a block of allocated memory.
  •     You have to include the header file stdlib.h before you can call the malloc(), calloc(), realloc(), or free() function.
  •     You should always check the values returned from the malloc(), calloc(), or realloc() function, before you use the allocated memory made by these functions.

 

Related Items

মডুলার C প্রোগ্রামিং (Modular C Programming)

কেবল মাত্র একটি ফাংশন দিয়ে কোনো বড়ো জটিল সমস্যা সমাধানের চেষ্টা করা ভাল প্রোগ্রামিংয়ের পদ্ধতি নয়। সঠিক পদ্ধতি হ'ল সমস্যাটিকে কয়েকটি ছোট ছোট এবং সরল টুকরো করে ফেলা যাতে তা আরও বিশদে বোঝা যায় । তারপরে এই ছোট এবং সরল সমস্যাগুলি সমাধান করার জন্য ছোট ছোট ফাংশন ব্লক তৈরি করা এবং পরে সেগুলি নিয়মানুযায়ী সংযোজিত করা ।

Programming Style

Programming Style

In this section, I'd like to briefly highlight some points that will help you write clean programs that can easily be read, understood, and maintained.

Exercises : Answer the following Question

To help solidify your understanding of this hour's lesson, you are encouraged to answer the quiz questions and finish the exercises provided in the Workshop before you move to the next lesson.

Question and Answer

    Q Is the C preprocessor part of the C compiler?

    A No. The C preprocessor is not part of the C compiler. With its own line-oriented grammar and syntax, the C preprocessor runs before the compiler in order to handle named constants, macros, and inclusion of files.

Compiling Your Code Under Conditions

Compiling Your Code Under Conditions

You can select portions of your C program that you want to compile by using a set of preprocessor directives. This is useful, especially when you're testing a piece of new code or debugging a portion of code.