c语言跟内存相关的函数名,c语言跟内存相关的函数名称是什么

c语言malloc函数

首先你要明确是指针的概念:很明确的定义就是存放地址的变量。请注意这个定义,没有任何其他的约束。

我们提供的服务有:成都做网站、网站建设、微信公众号开发、网站优化、网站认证、翔安ssl等。为成百上千家企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的翔安网站制作公司

malloc分配空间,是指系统按照的你程序在内存堆栈中分配一段内存给你,而该内存段的首地址赋值给你的p,这是基本的指针概念,为什么要强调这个?请继续看这过程,malloc对p做的操作仅仅是个赋值而已,除此之外malloc和p没有任何关系,都是独立的,真实的情况,不是说malloc给p分配空间,你这个说法是错误的,正确的说法是malloc分配料一段内存空间,通过p来使用这段内存而已。p仅仅是个使用者,并不是内存的所有者。

比如你的空间是10个字节,这个意思是说给你了10字节个空间的地址,你是的可以合法使用的内存空间,注意是合法使用的。

而p可以任意偏移的,可以便宜出分配的内存段,比如*(p+11),你可以打印这个值,有个随机数的,这意味着你可以p可以任意移动,但却是非法的,因为你偏离了给你分配的那个合法的空间。

C++语言中的库函数里的"cstdlib"是什么功能

cstdlib是C++里面的一个常用函数库, 等价于C中的stdlib.h。

stdlib.h可以提供一些函数与符号常量,具体如下:根据ISO标准,stdlib.h提供以下类型:

size_t, wchar_t, div_t, ldiv_t, lldiv_t

常量:

NULL, EXIT_FAILURE, EXIT_SUCCESS, RAND_MAX, MB_CUR_MAX

函数:

atof, atoi, atol, strtod, strtof, strtols, strtol, strtoll, strtoul, strtoull, rand, srand, calloc, free, malloc, realloc, abort, atexit, exit, getenv, system, bsearch, qsort, abs, div, labs, ldiv, llabs, tlldiv, mblen, mbtowc, wctomb, mbstowcs, wcstombs

扩展资料

包含函数

1、函数名称: calloc

函数原型: void * calloc(unsigned n,unsign size);

函数功能: 分配n个数据项的内存连续空间,每个数据项的大小为size

函数返回: 分配内存单元的起始地址,如果不成功,返回0

2、函数名称: free

函数原型: void free(void* p);

函数功能: 释放p所指的内存区

函数返回:

参数说明: p-被释放的指针

3、函数名称: malloc

函数原型: void * malloc(unsigned size);

函数功能: 分配size字节的存储区

函数返回: 所分配的内存区地址,如果内存不够,返回0

4、函数名称: realloc

函数原型: void * realloc(void * p,unsigned size);

函数功能: 将p所指出的已分配内存区的大小改为size,size可以比原来分配的空间大或小

函数返回: 返回指向该内存区的指针.NULL-分配失败

5、函数名称: rand

函数原型: int rand(void);

函数功能: 产生0到32767间的随机整数(0到0x7fff之间)

函数返回: 随机整数

6、函数名称: abort

函数原型: void abort(void)

函数功能: 异常终止一个进程.

7、函数名称: exit

函数原型: void exit(int state)

函数功能: 程序中止执行,返回调用过程

函数返回:

参数说明: state:0-正常中止,非0-非正常中止

8、函数名称: getenv

函数原型: char* getenv(const char *name)

函数功能: 返回一个指向环境变量的指针

函数返回: 环境变量的定义

参数说明: name-环境字符串

9、函数名称: putenv

函数原型: int putenv(const char *name)

函数功能: 将字符串name增加到DOS环境变量中

函数返回: 0:操作成功,-1:操作失败

参数说明: name-环境字符串

10、函数名称: labs

函数原型: long labs(long num)

函数功能: 求长整型参数的绝对值

函数返回: 绝对值

11、函数名称: atof

函数原型: double atof(char *str)

函数功能: 将字符串转换成一个双精度数值

函数返回: 转换后的数值

参数说明: str-待转换浮点型数的字符串

12、函数名称: atoi

函数原型: int atoi(char *str)

函数功能: 将字符串转换成一个整数值

函数返回: 转换后的数值

参数说明: str-待转换为整型数的字符串

13、函数名称: atol

函数原型: long atol(char *str)

函数功能: 将字符串转换成一个长整数

函数返回: 转换后的数值

参数说明: str-待转换为长整型的字符串

14、函数名称: ecvt

函数原型: char *ecvt(double value,int ndigit,int *dec,int *sign)

函数功能: 将浮点数转换为字符串

函数返回: 转换后的字符串指针

参数说明: value-待转换底浮点数,ndigit-转换后的字符串长度

15、函数名称: fcvt

函数原型: char *fcvt(double value,int ndigit,int *dec,int *sign)

函数功能: 将浮点数变成一个字符串

函数返回: 转换后字符串指针

参数说明: value-待转换底浮点数,ndigit-转换后底字符串长度

参考资料来源:百度百科-cstdlib

C语言calloc函数

calloc函数的功能与malloc函数的功能相似,都是从堆分配内存。

函数名: calloc

函数原型:void *calloc(int n,int size);

功 能: 函数返回值为void型指针。如果执行成功,函数从堆上获得size X n的字节空间,并返回该空间的首地址。如果执行失败,函数返回NULL。该函数与malloc函数的一个显著不同时是,calloc函数得到的内存空间是经过初始化的,其内容全为0。calloc函数适合为数组申请空间,可以将size设置为数组元素的空间长度,将n设置为数组的容量。

示例代码:

#include stdio.h

#include stdlib.h

#define SIZE 5

int main()

{

int * p=NULL;

int i=0;

//为p从堆上分配SIZE个int型空间

p=(int *)calloc(SIZE,sizeof(int));

if(NULL==p){

printf("Error in calloc.\n");

return -1;

}

//为p指向的SIZE个int型空间赋值

for(i=0;iSIZE;i++)

p[i]=i;

//输出各个空间的值

for(i=0;iSIZE;i++)

printf("p[%d]=%d\n",i,p[i]);

free(p);

p=NULL;

return 0;

}

C语言,memcpy函数的作用,最好再给个小程序~

函数名: memcpy

功 能: 从源source中拷贝n个字节到目标destin中

用 法: void *memcpy(void *destin, void *source, unsigned n);

程序例:

#include stdio.h

#include string.h

int main(void)

{

char src[] = "******************************";

char dest[] = "abcdefghijlkmnopqrstuvwxyz0123456709";

char *ptr;

printf("destination before memcpy: %s\n", dest);

ptr = memcpy(dest, src, strlen(src));

if (ptr)

printf("destination after memcpy: %s\n", dest);

else

printf("memcpy failed\n");

return 0;

}

C语言calloc的用法?

calloc是一个ios

c函数

函数名:

calloc

函数原型:void

*calloc(size_t

n,

size_t

size);

能:

在内存的动态存储区中分配n个长度为size的连续空间,函数返回一个指向分配起始地址的指针;如果分配不成功,返回null。

法:

void

*calloc(size_t

n,

size_t

size);

一般使用后要使用 free(起始地址的指针)

对内存进行释放,不然内存申请过多会影响计算机的性能,以至于得重启电脑。如果使用过后不清零,还可以使用指针对该块内存进行访问。

头文件:stdlib.h或malloc.h

相关函数:malloc、realloc、free _alloca

C语言动态内存分配与自定义函数实现

根据使用函数不同,作用各不相同。共同点均是动态分配一段内存,使用后需要用free函数释放。所有动态分配函数均声明在stdlib.h中。

1 malloc

void *malloc(unsigned int num_bytes);

功能

分配长度为num_bytes字节的内存块

返回值

如果分配成功则返回指向被分配内存的指针(此存储区中的初始值不确定),否则返回空指针NULL。当内存不再使用时,应使用free()函数将内存块释放。函数返回的指针一定要适当对齐,使其可以用于任何数据对象。

说明

关于该函数的原型,在以前malloc返回的是char型指针,新的ANSIC标准规定,该函数返回为void型指针,因此必要时要进行类型转换。

2 calloc

void *calloc(size_t n, size_t size);

在内存的动态存储区中分配n个长度为size的连续空间,函数返回一个指向分配起始地址的指针;如果分配不成功,返回NULL。

calloc在动态分配完内存后,自动初始化该内存空间为零,而malloc不初始化,里边数据是随机的垃圾数据。

3 realloc

void *realloc(void *mem_address, unsigned int newsize);

功能

先判断当前的指针是否有足够的连续空间,如果有,扩大mem_address指向的地址,并且将mem_address返回,如果空间不够,先按照newsize指定的大小分配空间,将原有数据从头到尾拷贝到新分配的内存区域,而后释放原来mem_address所指内存区域(注意:原来指针是自动释放,不需要使用free),同时返回新分配的内存区域的首地址。即重新分配存储器块的地址。

返回值

如果重新分配成功则返回指向被分配内存的指针,否则返回空指针NULL。

注意

当内存不再使用时,应使用free()函数将内存块释放。


分享文章:c语言跟内存相关的函数名,c语言跟内存相关的函数名称是什么
本文链接:http://scyanting.com/article/hsjdic.html