怎么把一个C文件划分为多个C文件

怎么把一个C文件划分为多个C文件,第1张

你这是C吗?

估计没人愿意回好带答你。

建立个头文件xx.h ,里面至少升态包含这样一句

void ab(int, int) //分号别少了

在拆分后的两个*.c 文件预处理部分都加入

#include "xx.h"

两个c文件都编译一吵袜源下就可以了

最好放一个project 里

输入文件名叫 abc.txt 你可以改名。

输出文件名叫 aaX.txt X=0,1,2,3....

单个文孝吵件大小 one_size, 你可以 更改大小。

#include<stdio.h>

main(){

FILE *fp, *fout

char nameout[80]

int i,j,k,n

long size, one_size=1024

char *buff

// one_size=one_size * 0.1 //你可以 更改大小

fp = fopen ("abc.txt","rb")

if (fp==NULL) { printf("Error opening file")return 0}

fseek (fp, 0, SEEK_END) // non-portable

size=ftell (fp)

printf ("Size of abc.txt: %d bytes.\n",size) //得到大小

rewind(fp)

n=size/巧答侍one_size

buff = (char*)malloc(sizeof(char)*one_size)

for (i=0i<ni++)

{

sprintf(nameout,"aa%d.txt",i)

fout = fopen(nameout,"wb")

k = fread (buff,1,one_size,fp)

//举闷if (k != one_size) {printf("read err\n")return (0)}

fwrite(buff,1,one_size,fout)

fclose(fout)

printf("output in %s\n",nameout)

} // for i

j = size % one_size

if (j!=0) {

sprintf(nameout,"aa%d.txt",n)

fout = fopen(nameout,"wb")

k = fread (buff,1,j,fp)

// if (k != j) {printf("read err\n")return (0)}

fwrite(buff,1,k,fout)

fclose(fout)

printf("output in %s\n",nameout)

}

fclose (fp)

return 0

}

假设我们要更改的源代码如下:

我们的任务是把xx写成一个头文件,将ff写成一个头文件。

头文件基本格式:

#ifndef _xx_h_

#define _xx_h_

//do something

#endif

第一步:首先将每个头文件写好,如下:

注意在源文件陪培使用头文件时要用“”而不能用<>,即:

#include "ff.h" 而不是 #include <ff.h>

第二步,将源代码写好后的运行结果:

这就可以了。程序能运行出结核乱历果了。

需要注意的一点:文件要在同一路径。如下图:

必须这样做!否则编译器将找不到头文件,会报错,会出现:

//我引用了一个未定义的头文件 ErrorTest.h:

即“No such file or directory”    就是没有文件或者路径。说明你的路径写错了,在编程时务必要注改搜意一下。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12207346.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存