Stdlib.h in C
0 170
The stdlib.h header file in C provides a collection of functions that are essential for various tasks such as memory allocation, random number generation, string manipulation, and environment control.
Memory Allocation Functions
1malloc(size_t size):
Allocates a block of memory of the specified size and returns a pointer to the beginning of the block.
Syntax:
void *malloc(size_t size);Example:
// Program for malloc in C #include<stdio.h>#include<stdlib.h> int main() { int *ptr; ptr = (int *)malloc(7 * sizeof(int)); // Allocates memory for 7 integers // Check if memory allocation was successful if (ptr == NULL) { printf("Memory allocation failed.\n"); exit(1); } else { printf("Memory allocated successfully.\n"); free(ptr); // Free allocated memory } return 0; }
Output:
Memory allocated successfully.
2calloc(size_t num, size_t size):
Allocates memory for an array of elements, initializes all bytes to zero, and returns a pointer to the beginning of the block.
Syntax:
void *calloc(size_t num, size_t size);Example:
// program for calloc in C #include<stdio.h>#include<stdlib.h> int main() { int *ptr; ptr = (int *)calloc(5, sizeof(int)); // Allocates memory for 5 integers // Check if memory allocation was successful if (ptr == NULL) { printf("Memory allocation failed.\n"); exit(1); } else { printf("Memory allocated successfully.\n"); free(ptr); // Free allocated memory } return 0; }
Output:
Memory allocated successfully.
3realloc(void *ptr, size_t size):
Resizes the memory block pointed to by ptr to the specified size.
If ptr is NULL, it behaves like malloc.
Syntax:
void *realloc(void *ptr, size_t size);Example:
// Program for realloc in C #include<stdio.h>#include<stdlib.h> int main() { int *ptr; ptr = (int *)malloc(7 * sizeof(int)); // Allocates memory for 7 integers // Resize memory block to accommodate 10 integers ptr = (int *)realloc(ptr, 10 * sizeof(int)); // Check if memory reallocation was successful if (ptr == NULL) { printf("Memory reallocation failed.\n"); exit(1); } else { printf("Memory reallocated successfully.\n"); free(ptr); // Free allocated memory } return 0; }
Output:
Memory reallocated successfully.
Random Number Generation Functions
1rand():
Generates a pseudo-random integer between 0 and RAND_MAX.
Syntax:
int rand(void);Example:
// program for rand in C #include<stdio.h>#include<stdlib.h> #include<time.h> int main() { srand(time(0)); // Seed the random number generator for (int i = 0; i < 5; i++) { printf("%d ", rand()); } return 0; }
Output:
258730021 2103890938 1154162713 682021446 1113025130
2srand() function:
The srand() function sets the starting point for generating random numbers, ensuring predictability and control over random number sequences.
Syntax:
void srand(unsigned int seed);
Example:
// program for srand() in C #include<stdio.h>#include<stdlib.h> int main() { srand(123); // Seed the random number generator with 123 for (int i = 0; i < 5; i++) { printf("%d ", rand()); } return 0; }
Output:
128959393 1692901013 436085873 748533630 776550279
Share:
Comments
Waiting for your comments