问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

如何用C语言写满500M的内存

发布网友 发布时间:2023-09-12 17:15

我来回答

3个回答

热心网友 时间:2023-09-20 15:49

申请完内存之后,用字符指针指向这块堆的起始地址,随机生成一个数字,范围为可视化字符的ascii,生成后转换为字符,赋给指针指向的地址内容,如此循环个1024*1024*500次。最后怎么读出来,太久没写过c了,不是很清楚,可以试试转换为字符数组,或者赋值给字符数组,保存为文件也行。

热心网友 时间:2023-09-20 15:49

malloc 申请500*1024的字节

#include <stdio.h>   
#include <stdlib.h>  
#include <time.h>    
     
#define CHAR_LENGTH 500*1024
     
int main() {
    printf("%d\n", CHAR_LENGTH);     
    char *pstr = (char*)malloc(CHAR_LENGTH);
    if (pstr == NULL) {     
        perror("malloc memory failed");     
        exit(1);     
    }
   
    srand((unsigned int) time(NULL));
    int a = 0;       
    for (int i = 0; i < CHAR_LENGTH; i ++) {
        a = rand() % 126 + 13;       
        sprintf((pstr + i), "%c", a);
        printf("%d\n", a);  
    }
     
    for (int i = 0; i < CHAR_LENGTH; i ++) {
        printf("%c", *(pstr + i));   
        if (i % 10 == 0) {  
   printf("\n");   
        } else if (i % 1000 == 0) {  
   break;   
        }   
    }
     
    free(pstr);      
     
    return 0;        
}

热心网友 时间:2023-09-20 15:49

使用fopen的r方式可以实现读取,用w+方式可以实现写入。
1.fopen的函数原型:FILE * fopen(const char * path,const char * mode);
fopen函数的第一个参数是文件路径,第二个参数是打开方式,有以下几种方式:
r 以只读方式打开文件,该文件必须存在。
r+ 以可读写方式打开文件,该文件必须存在。
rb+ 读写打开一个二进制文件,允许读数据。
rw+ 读写打开一个文本文件,允许读和写。
w 打开只写文件,若文件存在则文件长度清为0,即该文件内容会消失。若文件不存在则建立该文件。
w+ 打开可读写文件,若文件存在则文件长度清为零,即该文件内容会消失。若文件不存在则建立该文件。
a 以附加的方式打开只写文件。若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾,即文件原先的内容会被保留。(EOF符保留)
a+ 以附加方式打开可读写的文件。若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾后,即文件原先的内容会被保留。 (原来的EOF符不保留)
wb 只写打开或新建一个二进制文件;只允许写数据。
wb+ 读写打开或建立一个二进制文件,允许读和写。
wt+ 读写打开或着建立一个文本文件;允许读写。
at+ 读写打开一个文本文件,允许读或在文本末追加数据。
ab+ 读写打开一个二进制文件,允许读或在文件末追加数据。
上述的形态字符串都可以再加一个b字符,如rb、w+b或ab+等组合,加入b 字符用来告诉函数库打开的文件为二进制文件,而非纯文字文件。
返回值:文件顺利打开后,指向该流的文件指针就会被返回。如果文件打开失败则返回NULL,并把错误代码存在errno中。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
结核病是什么样的疾病? 曹丕17岁得了肺痨,明知自己命不长久,还要强争王位,是不是很自私呢?_百... 古代小说常出现的病名 急求一篇"生活小窍门"(500字)的作文 至今最有什么小妙招 健康的戒烟方法 笔记本电池锁死是什么原因引起的? 黑龙江债权转让合同纠纷该怎样取证 安徽债权转让合同纠纷应该怎么样取证 房产官司律师费多少 杭州网易雷火科技有限公司注册地址 埃及艳后怎么死的 有什么好的直播推荐? 形容人与人互助合作的成语有哪些 福建省泉州市星浪酒业有限公司怎么样? 峰星汽车漆修复美容中心怎么样 星峰商城充话费能成功吗 与我跳舞 ダンスウィズミ_剧情介绍 江苏全国计算机等级考试的考点有哪些? 一间容纳12人的办公室大约是多大 一个30人左右的电脑公司需要多大面积的写字楼,总经理、副总、财务、 天龙八部手游华山门派技能指点没有乔峰 甲维虫螨腈能打白菜吗? 甲维虫螨腈不能与什么混用 ...然后在剩下的桃核上开了门住进去的童话故事? 为什么塑料袋上要打眼儿呢? 包装胶袋为什么要打孔? 转让二手小吃车,镇江市 蓬安菜鸟北二街公共服务站在哪里 菜鸟公共服务站给送吗 c语言 分配一个超大的内存地址 ...买衣服应该选什么码的?网上注明是140 150 160 的。。 女命流年走印劫是指什么意思? 激活退役军人优待证,银行工作人员强制将我的其他银行卡注销是不_百度知... 银行人员被强制转营销岗怎么办 国有银行工作人员和社区内工作人员哪个好一点? 应用 英文 把米饭放在哪个地方最容易被鸟吃? 谁手上在用DELL PowerConnect 5324交换机?VLAN配置 得一日清凉,享一世心安什么意思 觅一方清凉,守一寸光阴是什么意思 梦幻西游练力WZ的练到129以上的进,力WZ厉害吗? 高手请问那如果是力五庄 怎么加点好 学什么剧情技能好 拜托分析下_百 ... 辅酶q10对心脏的作用与功效 男生知道女生不怎么熬夜,到了11点多男生就会说早点休息,有什么事明天... 一个男生说早点睡觉是什么意思,一个男生问你早点睡的意思是什么? 男生对你说:早点休息好么? ...演示文档拷进U盘里,不是ppt,是一款软件叫斧子演示 骑马不颠的技巧 梦见自己捉鬼的含义