Skip to content

Instantly share code, notes, and snippets.

@deepikabhavnani
Created March 6, 2019 04:40
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save deepikabhavnani/5a515f2bced590fa9a9688ecc864886d to your computer and use it in GitHub Desktop.
Save deepikabhavnani/5a515f2bced590fa9a9688ecc864886d to your computer and use it in GitHub Desktop.
malloc_example.cpp
#include "mbed.h"
void *array[1000];
int main()
{
void *data = NULL;
int count = 0;
int size = 100;
printf("*** main begin ***\r\n");
printf("\r\n");
printf("*** test begin ***\r\n");
int loop = 10;
while(loop)
{
void *tmp_data = malloc(size);
if (NULL != tmp_data)
{
data = tmp_data;
array[count++] = tmp_data;
memset((void *)data, 0x10, size);
printf("%d. malloc data: %p size = %d \n", loop, data, size);
size += 2000;
if (size > 10000) {
size %= 127;
}
} else {
for (int i = 0; i < count; i++)
{
printf("free data: %p \n", array[i]);
free(array[i]);
array[i] = NULL;
}
loop--;
count = 0;
size += 300;
continue;
}
}
printf("*** test end ***\r\n\r\n");
printf("\r\n");
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment