当前位置:首页 » 文件管理 » C语言最多可以新建多少文件
扩展阅读
醉驾判多长时间可以判刑 2025-07-15 13:53:09
运动可以吃沙拉吗 2025-07-15 13:52:23
可以看韩漫画bl的网站 2025-07-15 13:42:38

C语言最多可以新建多少文件

发布时间: 2025-07-15 10:34:09

⑴ c语言中一个工程下是不是不可以有几个c程序 写了一个程序后,在原窗口在想写个程序整么办

可以有多个C程序,但是Source Files下的所有文件总共只能有一个main
解决方法就是:
选中多余文件(只留下一个)——按键盘上的Delete键删除(源程序还在,只是不在Source Files下了)——菜单栏“组件”——“清除”
这样所有的程序都可以带main互不干扰
如果想要测试以前的程序:
右键单击Source Files——“添加文件到目录”,就可以添加了

⑵ 在c语言中,创建一个二进制文件,最大为4M,将若干个小文件写到这个文件,并读出指定文件 求大神指导orz

自己做一个文件头,记录每个文件的大小
#include<stdio.h>
longGetFileSize(FILE*fp)
{
fseek(fp,0,SEEK_END);
returnftell(fp);
}
voidWriteToFile(FILE*mainFile,FILE*subFiles[],size_tfileCount)
{
//文件头:文件数量+每个文件的大小
charbuff[1024];
intfileHeader[fileCount+1];//文件头
fileHeader[0]=fileCount;
for(size_ti=0;i<fileCount;i++)
{
fileHeader[i+1]=GetFileSize(subFiles[i]);
}
fseek(mainFile,0,SEEK_SET);
fwrite(fileHeader,sizeof(int),fileCount+1,mainFile);
for(size_ti=0;i<fileCount;i++)
{
while(1)
{
intcount=fread(buff,sizeof(char),1024,subFiles[i]);
if(count<=0)break;
fwrite(buff,sizeof(char),count,mainFile);
}
fclose(subFiles[i]);
}
fclose(mainFile);
}
voidReadToFile(FILE*mainFile,FILE*subFile,size_tindex)
{
intfileCount;//文件数量
longoffset=0;//文件内容相对于文件头的偏移量
charbuff[1024];//缓冲区
fread(&fileCount,sizeof(int),1,mainFile);
if(index>fileCount)
{
printf("无第%d号文件! ",index);
return;
}
intfileSize[fileCount];
fread(fileSize,sizeof(int),fileCount,mainFile);
for(size_ti=0;i<index;i++)
{
offset+=fileSize[i];
}
fseek(mainFile,offset,SEEK_CUR)
inttimes=fileSize[index]/sizeof(buff);//读取次数
intrest=fileSize[index]%sizeof(buff);//剩余字节数
for(inti=1;i<=times;i++)
{
fread(buff,sizeof(char),1024,mainFile);
fwrite(buff,sizeof(char),1024,subFile);
}
fread(buff,sizeof(char),rest,mainFile);
fwrite(buff,sizeof(char),rest,subFile);
fclose(mainFile);
fclose(subFile);
}

intmain(void)
{
FILE*mainFile=fopen("main.bin","w");
FILE*subFiles[]={文件1,文件2,...};
WriteToFile(mainFile,subFiles,文件数量);
mainFile=fopen("main.bin","r");
FILE*subFile=fopen("sub.bin","w");
ReadToFile(mainFile,subFile,文件索引);
return0;
}