當前位置:首頁 » 文件管理 » C語言最多可以新建多少文件
擴展閱讀
木和目可以組成什麼字 2025-07-15 10:59:45

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;
}