c语言调用的viod函数不执行,void 函数 调用问题

这篇博客详细介绍了C语言中进行文件操作的方法,包括文件的打开、关闭,以及如何写入和读取单个字符、字符串。通过示例代码展示了filePutc、fileGetc、filePuts、fileGets、fileWrite和fileRead等函数的实现,涵盖了基本的文件读写功能。
摘要由CSDN通过智能技术生成

回复 4楼 renkejun1942

int main(int argc, char* argv[])

{

/*

for (int i = 'A' ;i<='F' ;i++)

{

for (int j = 'A';j<=i; j++)

{

printf("%c ",j);

}

printf("\n");

}

*/

//这里一调用就出错

filePutc () ;

fileGetc () ;

filePuts () ;

fileGets () ;

fileWrite() ;

fileRead () ;

return 0;

}

// 写入字符的文件

void filePutc ()

{

// 定义一个文件指对象

// 指向所操作的文件内存

FILE* pF ;

// 打开一个文件

// 如果不存在,创建一个新文件并打开

// 如果文件在跟exe程序在同一个目录存在

// 直接打开

// 参数一:文件名,相对路径

// 参数二:文件打开的方式,w,表示写入方法,可以向文件中写入内容

//“r” 读取方式,只能读取数据,不能写入数据,不可写

// 返回值,指向打开文件的指针,如果为NULL 打开文件失败

pF = fopen ("data.txt","w") ;

if (pF==NULL)

{

puts("打开文件失败!");

return  ;

}

for (int i = 'A' ;i

{

// 向文件中 写入字符

// 参数一: 要写入字符的ASCLL

// 参数二:要写入文件的指针

fputc(i,pF);

}

// 关闭文件,保证文件正确

fclose(pF) ;

}

// 读出字符到文件

void fileGetc ()

{

FILE* pF ;

//以读取的方式打开文件

pF = fopen("data.txt","r") ;

if (pF==NULL)

{

puts("打开文件失败!");

return ;

}

// 从文件读取一个字符

// 参数:文件指针

// 返回值:读取好的字符

char c =fgetc(pF) ;

// 如果读取的字符不是文件结尾标志

// 持续读取:EOF;文件结尾标示位

while (c !=EOF)

{

//打印当前字符

printf("%c",c);

// 继续读取下一个字符

c =fgetc(pF);

}

puts ("") ;

// 关闭文件

fclose(pF) ;

}

// 写入一组字符到文件

void filePuts()

{

FILE* pF ;

// 以读取的方式打开文件

pF = fopen("data.txt","w") ;

if (pF==NULL)

{

puts("打开文件失败!");

return ;

}

//打印字符串到文件中

// 参数一:字符串地址

// 参数二:写入文件的指针

fputs ("12345\n",pF);

fputs ("ABCDE\n",pF)

// 关闭文件

fclose(pF);

}

// 读取字符串到文件中

void fileGets()

{

FILE* pF ;

// 以读取的方式打开文件

pF = fopen("data.txt","r") ;

if (pF==NULL)

{

puts("打开文件失败!");

return ;

}

char str[100] ;

// 按行来读出字符串

// 参数一:读取的字符存放的位置地址

// 参数二:读取的字符个数

// 参数三:从哪个文件读取

fgets(str,12,pF) ;

printf("%s",str) ;

fgets(str,12,pF) ;

printf("%s",str) ;

fclose(pF) ;

}

//写入以任意大小的任何内容到文件中

void fileWrite()

{

FILE* pF ;

// 以读取的方式打开文件

pF = fopen("data.txt","w") ;

if (pF==NULL)

{

puts("打开文件失败!");

return ;

}

char str[100] = "12345678abcdefg" ;

// 写入任意个字符二进制数据到文件中

// P1: 要写入的内容和指针void*任何类型都可以写入

// p2: 每个变量的大小,根据变量的大小来确定

// p3: 一共存储多少个变量内容:1*15

// p4: 文件指针

fwrite((void*)str,sizeof(char).15,pF)// 15的大小可以调整

// 关闭文件

fclose(pF);

}

// 读取任意大小的内容到文件中

void fileRead ()

{

FILE* pF ;

// 以读取的方式打开文件

pF = fopen("data.txt","r") ;

if (pF==NULL)

{

puts("打开文件失败!");

return ;

}

char str[100]   ;

// 写入任意个字符二进制数据到文件中

// 返回值表示读取成功的有效字节数

// 如果返回值为0:读取失败

int r = fread(str,sizeof(char),10,pF);

str[10]='\0' ;

if(r!=0)

{

printf("读取的自己数%d\n",r);

priontf("%s",str);

}

fclose(pF) ;

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值