C语言完美演绎9-19

/* 范例:9-19(适用TC、BCB,但VC++的fputs、fgets定义不同)*/

#include <stdio.h> /* 若在BCB执行,需加入#include <stdlib.h> */

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

{

FILE *fp1;

int ch,i;

char *p1="ABCD";

char *p2="abcdefg\nAA";

if ((fp1=fopen(argv1,"w"))==NULL) /* 写入模式 */

{

printf("文件%s打开失败\n",argv1);

getchar();

exit(1); /* 强迫离开程序 */

}

ch=fputs(p1,fp1); /* 写入fp1(不含'\0'),返回p1字符串最后字符68(D) */

printf("\"ABCD\" return => %d\n",ch);

ch = fputs(p2,fp1); /* abcd接于上一字符串后,分2行写入fp1,

返回p2字符串最后字符65(A) */

printf("\"abcdefg\\nAA\" return => %d\n",ch);

puts("Line1"); /* puts()输出这两行包含'\0' */

puts("Line2");

fclose(fp1);

fp1=fopen(argv1,"r");

while(fgets(p1,6,fp1)!=NULL) /* 取得5个字符 */

{

puts(p1); /* 输出到屏幕 */

}

fclose(fp1);

}

程序执行结果:

D:\TC>p9-19 out.txt

"ABCD" return => 68

"abcdefg\nAA" return => 65

Line1

Line2

ABCDa

bcdef

g

AA

以DOS指令看out.txt:

D:\TC>type out.txt

ABCDabcdefg

AA

相关推荐
A.零点28 分钟前
【2个月 C 语言从入门到精通:零基础系统教程】第十二讲:深入了解指针(五)
c语言·开发语言·网络·笔记·visual studio
2601_951643721 小时前
1 章 C语言概述
c语言·编程语言·历史·标准·优缺点
玖玥拾3 小时前
C/C++ 数据结构(五)链表的应用、对象池
c语言·数据结构·c++·链表·对象池·双向链表
三品吉他手会点灯3 小时前
C语言学习笔记 - 48.流程控制2 - 什么是流程控制
c语言·开发语言·笔记·学习
AI thought4 小时前
C语言、C++与C#深度研究报告:从底层控制到现代企业级开发的演进
c语言·c++·c·内存管理·编译模型
我命由我123454 小时前
RFID 技术极简理解
java·c语言·c++·嵌入式硬件·物联网·visualstudio·java-ee
格发许可优化管理系统4 小时前
Mentor许可证与其他软件许可证的深度比较
java·大数据·运维·c语言·c++·算法
程序员zgh4 小时前
C++ 万能引用与完美转发
c语言·开发语言·c++·经验分享·学习
不会C语言的男孩5 小时前
Linux 系统编程 · 第 9 章:进程创建
linux·c语言·开发语言
AI+程序员在路上5 小时前
CSP、PP、PV、HM 在 CiA402 标准下的差异解析
linux·c语言·开发语言·嵌入式硬件