当前位置: 首页 > wzjs >正文

视频宣传片免费模板武汉网站seo推广公司

视频宣传片免费模板,武汉网站seo推广公司,零售网站建设,用wix做外贸网站1.malloc 原型&#xff1a;void* malloc(size_t size);&#xff08;位于 <stdlib.h> 头文件中&#xff09; 作用&#xff1a;分配一块连续的、未初始化的内存块&#xff0c;大小为 size 字节。 返回值&#xff1a; 成功&#xff1a;返回指向分配内存首地址的 void* 指针…

1.malloc

  • 原型void* malloc(size_t size);(位于 <stdlib.h> 头文件中)

  • 作用:分配一块连续的、未初始化的内存块,大小为 size 字节。

  • 返回值:

    • 成功:返回指向分配内存首地址的 void* 指针(需强制类型转换后才能使用)。
    • 失败(如内存不足):返回 NULL
  • 代码示例:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{char *p;             // 1. 声明一个 char 类型的指针 pp=(char *)malloc(1); // 2. 动态分配 1 字节的内存,并将地址赋给 p*p= 'c';             // 3. 将字符 'c' 存储到 p 指向的内存中printf("%c\n",*p);p=(char *)malloc(12);strcpy(p,"Hello!");printf("%s",p);return 0;
}
  • 成果展示:image-20250529122947592

2.realloc

作用:调整动态内存块大小(扩大/缩小)。

原型

void *realloc(void *ptr, size_t new_size);
  • ptr:原内存指针。
  • new_size:新大小(字节)。若为 0ptr 非空,等同 free

关键点

  1. 可能移动内存:若原位置空间不足,会分配新内存并复制数据。

示例

int *arr = malloc(5 * sizeof(int));  
arr = realloc(arr, 10 * sizeof(int));  // 扩容到10个int
free(arr);
  • 代码示例:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{char *p;             p=(char *)malloc(7);strcpy(p,"Hello!");printf("%s\n",p);printf("扩容前地址:%p\n",p);free(p); p=NULL;int len;len=strlen("若原位置空间不足,会分配新内存并复制数据");p=realloc(p,len+1);strcpy(p,"若原位置空间不足,会分配新内存并复制数据");printf("%s\n",p);printf("扩容后地址:%p\n",p);return 0;
}
  • 成果展示:

image-20250529160228308

3.free

作用:释放 malloc/calloc/realloc 分配的动态内存,防止内存泄漏。

用法

void free(void *ptr);  // ptr 必须是动态分配的内存地址

关键点

  1. 必须配对使用:每个 malloc 都要对应一个 free
  2. 避免悬空指针:释放后指针应置 NULLptr = NULL)。
  3. 禁止重复释放:对同一内存多次 free 会导致崩溃。
  4. 仅用于动态内存:静态数组(如 int a[10])不可 free

示例

int *p = malloc(10 * sizeof(int));  
if (p != NULL) {  // 使用内存...  free(p);  p = NULL; // 安全操作  
}

4.memset

功能

快速将某块内存的所有字节设为指定值(按字节填充)。

函数原型
void *memset(void *ptr, int value, size_t num);  
  • ptr:目标内存首地址(如数组、结构体)。
  • value:填充值(实际取低8位,范围0~255)。
  • num:填充的字节数(通常用 sizeof 计算)。
  • 返回值:返回 ptr 本身。

常用场景
  1. 清零内存(最安全):

    int arr[10];  
    memset(arr, 0, sizeof(arr)); // 所有字节置0  
    
  • 代码示例:
#include <stdio.h>
#include <string.h>int main()
{int arr[10]={1,2,3,4,};memset(arr,0,sizeof(arr));for(int i=0;i<10;i++){printf("%d ",arr[i]);}return 0;
}
  • 成果展示:

image-20250529215753001

  1. 填充字符数组:

    char str[10];  
    memset(str, 'A', 5);  // 前5字节设为'A'(需手动补'\0')  
    
  • 代码示例:
#include <stdio.h>
#include <string.h>int main()
{char arr[10];memset(arr,'S',5);for(int i=0;i<10;i++){printf("%c ",arr[i]);}return 0;
}
  • 成果展示:

image-20250529220119589

http://www.dtcms.com/wzjs/3441.html

相关文章:

  • 网页设计网站建设怎样注册自己网站的域名
  • 制作html网站模板互联网推广招聘
  • 常用博客建站程序seo推广工具
  • wordpress 文章无法显示长春做网络优化的公司
  • 网站怎么做百度百科百度竞价网站
  • WordPress弊端东莞seo搜索
  • 产品开发设计哈尔滨seo公司
  • 建立网站后还要钱吗企业邮箱申请
  • 医疗器械注册证查询广东seo
  • 长沙望城建设局网站搜索网站大全排名
  • 网站设计建设seo模拟点击算法
  • 河北网站建设推广公司深圳网络提速优化服务包
  • 网站建设属于那个科目手机如何创建网站
  • 网站建设网站合同版本新东方烹饪培训学校
  • ic电子网站建设互联网运营自学课程
  • 天津企业网站建站市场调研报告最佳范文
  • 娄底360seo优化公司网站优化师
  • 万网如何上传网站网络营销五个主要手段
  • 网页制作与网站建设技术大全 pdf最新行业动态
  • 快速免费做网站网站域名购买
  • o2o和o2b、o2c模式是什么意思啊百度seo搜索排名
  • 找网络公司做网站需要注意seo的形式有哪些
  • 想搭网站做软件首先要学设么浙江网络推广
  • 化妆品网站设计系统需求的策划书外汇交易平台
  • 网站维护推广表徐州百度运营中心
  • 制作化妆品网站百度竞价排名是哪种方式
  • 建设网站需要什么软件下载制作一个app软件需要多少钱
  • 深圳做网站收费百度seo报价
  • 智能写作网站公司网站的推广
  • 甘肃兰州疫情最新情况最新消息河南网站seo费用