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

相关推荐
程序猿编码7 小时前
不用 PyTorch!纯 C 实现 N 维张量 + 反向传播,完成手写数字识别训练
c语言·人工智能·pytorch·神经网络·卷积神经网络·大模型推理
Navigator_Z9 小时前
LeetCode //C - 1269. Number of Ways to Stay in the Same Place After Some Steps
c语言·算法·leetcode
垆边人似月.9 小时前
华为机考题:矩阵中的最长递增路径
c语言·c++
free-elcmacom10 小时前
手撕 memcpy 和 memmove:从字节级拷贝到内存重叠的终极较量
c语言·开发语言·青少年编程·visual studio code·visual studio
程序员_小兵10 小时前
PCIe Switch Fabric 技术解析
服务器·c语言·嵌入式硬件·php·fabric
凉茶钱11 小时前
【C++】动态内存管理完整解析:从内存划分到 new delete 底层原理
c语言·开发语言·c++·内存管理·动态内存
cu14311 小时前
细谈GM8775C的具体功能和应用
c语言·c++·人工智能·嵌入式硬件
@yanyu6661 天前
C编译器安装与第一个C程序
c语言·开发语言
山下梅子酒2251 天前
洛谷-入门-B2070
c语言