例題:開辟int類型空間,賦值為20并輸出
//
// Created by linux on 4/22/24.
//
#include <stdio.h>
#include <stdlib.h> //動態(tài)分配堆內(nèi)存需要導(dǎo)入
//動態(tài)分配內(nèi)存
int main() {
int *p1=NULL;
p1=(int *) malloc(sizeof(int));
if(p1==NULL){
printf("malloc error \n");
return -1;
}
//分配成功
*p1=20;
printf("Value of *p1: %d\n", *p1);
//分配結(jié)束后記得釋放,否則會長時間占用堆內(nèi)存 ,生命周期直到你手動free釋放
free(p1);
p1=NULL; //釋放內(nèi)存之后記得賦值NULL 空指針
return 0;
}
例題:開辟字符類型空間,賦值為B并輸出
當(dāng)然!下面是一個為字符動態(tài)分配內(nèi)存并為其分配值“B”,然后打印該字符的示例:
#include <stdio.h>
#include <stdlib.h>
int main() {
char *char_ptr = (char *)malloc(sizeof(char)); // Allocate memory for a character
if (char_ptr == NULL) {
printf("malloc error\n");
return -1;
}
*char_ptr = 'B'; // Assign the character 'B' to the allocated memory
printf("Value of *char_ptr: %c\n", *char_ptr); // Print the character
free(char_ptr); // Free the allocated memory
char_ptr = NULL; // Set the pointer to NULL
return 0;
}
此代碼動態(tài)為字符分配內(nèi)存,為其分配“B”,打印該字符,釋放分配的內(nèi)存,并將指針設(shè)置為 NULL。
include <stdlib.h>的作用:
<stdlib.h>是C標準庫中的頭文件。它代表“標準庫”,提供多種通用函數(shù),包括內(nèi)存分配、進程控制、轉(zhuǎn)換等。
以下是 提供的一些常用函數(shù)和類型<stdlib.h>:
-
內(nèi)存分配函數(shù):
-
malloc():動態(tài)分配內(nèi)存。 -
calloc():為數(shù)組分配內(nèi)存并將其所有位初始化為零。 -
realloc():更改先前分配的內(nèi)存塊的大小。 -
free():釋放動態(tài)分配的內(nèi)存。
-
-
退出功能:
-
exit():終止調(diào)用過程。 -
abort():導(dǎo)致程序異常終止。
-
-
偽隨機數(shù)生成器:
-
rand():生成偽隨機數(shù)。 -
srand():為隨機數(shù)生成器播種。
-
-
環(huán)境功能:
-
system():執(zhí)行由字符串指定的命令。
-
-
字符串到數(shù)字的轉(zhuǎn)換:
-
atoi()、atol()、atoll():分別將字符串轉(zhuǎn)換為整數(shù)、長整型或長長整型。 -
atof():將字符串轉(zhuǎn)換為浮點數(shù)。
-
還有許多其他人。
<stdlib.h>是 C 編程中必不可少的頭文件,提供內(nèi)存管理、處理程序終止和生成隨機數(shù)等任務(wù)的函數(shù)。