#include <stdio.h>
#include <stdlib.h>
int main()
{
char a = 0;
//int * p = (int * ) malloc (4 * sizeof(int));
int * p = (int * ) malloc (4);
char * cp = (char * ) malloc (4 * sizeof(char));
a = 1;
a = (char)(~0);
a = 0;
a |= (~((~0)<<5) <<3);
//step-by-step program
a = 0;
a = (char)(~0);
a = a << 5;
a = ~a;
a = a << 3;
if(NULL == p)
{
printf("malloc failed\n");
return -1;
}
if(NULL == cp)
{
printf("malloc failed\n");
return -1;
}
*(p+0) = 1;
*(p+1) = 3;
*(p+2) = 5;
*(p+3) = 4;
*(cp+0) = 1;
*(cp+1) = 3;
*(cp+2) = 5;
*(cp+3) = 4;
//*(p+4) = 6; //编译通过,但无法运行。
printf("%d\n", *(p+3));
free (p);
free (cp);
return 0;
}
malloc,free实验
转载本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
Linux内存操作之free命令
在Linux操作系统中,free 命令是一个非常重要的工具,用于显示系统内存(包括物理内存和交换空间)的使用情况。
缓存 应用程序 后端 服务器 Linux -
malloc 和 free - C
内存管理 &nbs
职场 和 休闲 malloc free -
new/delete 与 malloc/free
1 使用malloc、freemalloc、freemalloc、free 为 CCC 的标准库函数,需要引入库
malloc C++ 指针 空指针 内存分配 -
new / delete ,malloc / free 区别
都可以⽤来在堆上分配和回收空间。new /delete 是操作符,malloc/free 是库函数。
java 开发语言 初始化 析构函数 构造函数