C语言malloc函数的功能及用法

C语言malloc函数的功能及用法关于C语言malloc函数函数介绍应用举例1应用举例2函数介绍malloc(memoryallocation) 中文名称:动态内存分配用于申请一块连续的指定大小的内存块区域以void*类型返回分配的内存区域地址,当无法知道内存具体位置的时候,想要绑定真正的内存空间,就需要用到动态的分配内存。应用举例1关于C语言动态申请数组(整形数据类型)空间的应用#include<stdio…

大家好,又见面了,我是你们的朋友全栈君。

关于C语言malloc函数

函数介绍

malloc(memory allocation)
中文名称:动态内存分配
用于申请一块连续的指定大小的内存块区域以void*类型返回分配的内存区域地址,当无法知道内存具体位置的时候,想要绑定真正的内存空间,就需要用到动态的分配内存。

应用举例1

关于C语言动态申请数组(整形数据类型)空间的应用

#include<stdio.h>
#include<malloc.h>

void A()
{ 
   
	int n;//数组元素个数
	int *add;
	scanf("%d",&n);
	add=(int *)malloc(sizeof(int)*n);//内存申请
	for(int i=0;i<n;i++)
	{ 
   
		scanf("%d",&add[i]);
	}
	for(int i=0;i<n;i++)
	{ 
   
		printf("%d",add[i]);
	}
}

int main()
{ 
   
	A();
	return 0;
}

应用举例2

C语言动态申请数组(结构体)空间的应用

#include<stdio.h>
#include<stdlib.h>
#include<malloc.h>//包含malloc函数的头文件

struct Item//定义结构体
{ 
   
	char name[20];
	int num;	
};

struct Item *I;//申请Item类型的指针

int A()//进行内存申请
{ 
   
	int i,j;
	int n;//申请的数量
	scanf("%d",&n);
	I=(struct Item*)malloc(sizeof(struct Item)*n);
	return n;	
}

int Input()//数据输入函数
{ 
   
	int n=A();
	int i,j;
	for(i=0;i<n;i++)
	{ 
   
		printf("%d Name:",i+1);
		scanf("%s",&I[i].name);
		printf("num:\n");
		scanf("%d",&I[i].num);
	}
	return n;	
}

void output()//数据输出函数
{ 
   
	int n=Input();
	for(int i=0;i<n;i++)
	{ 
   
		printf("%d |",i);
		printf("Name:%s ",I[i].name);
		printf("num:%d\n",I[i].num);
	}
}

int main()
{ 
   
	output();
	return 0;
}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/133026.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • vue封装jquery修改自身以及兄弟元素的方法「建议收藏」

    vue封装jquery修改自身以及兄弟元素的方法「建议收藏」在项目中我们经常有,点击某一个元素让其自身样式发生变化,同时其兄弟元素改变的需求,最简单的就是通过Jquery来操作,但是如果需求多的话,那么我们就可以对这个方法进行封装,然后再引入使用。今天我们就来看看这个封装…目录一.引入Jquery1.下载jquery源码:2.NPM安装二.封装三.引用1.单文件应用2.全局引用四.结尾一.引入Jquery1.下载jquery源码:我们在网页中打开https://cdn.bootcss.com/jquery/3.2.1/jquery.min.js,复制代码粘贴

    2022年10月15日
  • spring注解配置相对于传统xml配置的优势

    spring注解配置相对于传统xml配置的优势

  • MySQL—内连接和外连接区别

    MySQL—内连接和外连接区别区别内连接(innerjoin):取出两张表中匹配到的数据,匹配不到的不保留 外连接(outerjoin):取出连接表中匹配到的数据,匹配不到的也会保留,其值为NULL示例表users表mysql>select*fromusers;+—-+——-+|id|name|+—-+——-+|1|john||2…

  • MessageDigest类的使用

    MessageDigest类的使用随时随地阅读更多技术实战干货,获取项目源码、学习资料,请关注源代码社区公众号(ydmsq666)在前面java中的MessageDigest类中简要介绍了它的一些作用和方法,下面给个例子,对文件和字符串MD5分别给了两个例子,代码如下:packagecom.home;importjava.io….

  • JavaScript基础知识

    JavaScript基础知识

  • navicatpremium15激活码(JetBrains全家桶)

    (navicatpremium15激活码)2021最新分享一个能用的的激活码出来,希望能帮到需要激活的朋友。目前这个是能用的,但是用的人多了之后也会失效,会不定时更新的,大家持续关注此网站~IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.cn/100143.html…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号