十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
for (i=*p;i*p+1;i++)这一句就错大了。p还没有赋值,哪来的*p?所以再没有往下看。
创新互联公司主营北镇网站建设的网络公司,主营网站建设方案,重庆APP开发公司,北镇h5微信平台小程序开发搭建,北镇网站营销推广欢迎北镇等地区企业咨询
多文件之间,一般很少有单个参数传递,那个交集太大,不容易移植,各个文件之间最好是越独立越好。你提到的数据传递,一般是通过函数接口来实现的。就是说我要用另一个C文件中的某一个功能的时候,可以通过include它的头文件,然后直接调用它的接口函数,这样目的就达到了,这样实现的好处就是易于移植。这个概念是很重要的,这样好些函数,你写完一遍之后就是一劳永逸啦,大家都知道C的移植性很好嘛。明白了吗?
希望这个回答能对你有帮助哈~
在C 语言中没有办法把其他文件里的内容传递给主函数 main( )。因为任何一个 C 语言源程序都是从 main( ) 函数开始执行的。所以只能够在主函数 main( ) 中,将文件里的内容传递给用户自定义的子函数才对。例如如下 C 程序:
#include stdio.h
#define MAX 100
void main( )
{
FILE * fpr ;
char file_buffer[MAX] ;
fpr = fopen("my_textfile", "r" ) ; /* 以读方式打开 my_textfile 文本文件 */
if( fpr == NULL )
{ /* 若文件打开失败,则退出系统 */
printf("Can't open my_textfile for read!\n") ;
exit(1) ;
}
fgets(buffer, MAX, fpr) ; /* 从文件中读入一行数据 */
my_subfunc(buffer) ; /* 调用用户自定义的子函数 */
puts(buffer) ; /* 显示处理后的结果 */
fclose(fpr) ; /* 关闭文件 */
}
my_subfunc(char buffer[ ])
{
int i = 0 ;
for( i = 0 ; buffer[i] != '\0' ; i++)
buffer[i] += 2;
}
1、首先输入下方的代码
#include stdio.h
int main()
{
//下面是写数据,将数字0~9写入到data.txt文件中
FILE *fpWrite=fopen("data.txt","w");
if(fpWrite==NULL)
{
return 0;
}
for(int i=0;i10;i++)
fprintf(fpWrite,"%d ",i);
fclose(fpWrite);
//下面是读数据,将读到的数据存到数组a[10]中,并且打印到控制台上
int a[10]={0};
FILE *fpRead=fopen("data.txt","r");
if(fpRead==NULL)
{
return 0;
}
for(int i=0;i10;i++)
{
fscanf(fpRead,"%d ",a[i]);
printf("%d ",a[i]);
}
getchar();//等待
return 1;
}
2、面是写入到txt后的截图:
3、下面是读取文件后打印数据到控制台的截图。