关于C/C++发送到打印机的一些问题处理

我写的是发送到屏幕,编写,他打开一个文件,并将内容发送到打印机,打印时,每页最多55行,在 C/C++那一栏里面,上面是题目。
 
回答:
打印到文件的话,不同系统是不同的,在windwos下是要调用SDK的,即使是windwos,不同版本也是有区别的。(windwos XP有LPT及PRN设备,而win10就没有了)要知道标准的C/C++只支持标准的输入/输出设备,像打印机,只能用系统调用了。


补充:
#include <stdio.h>
#include <stdlib.h>
#define BUFSIZE 100
int main(void)
{
char filename[60];
char buf[BUFSIZE];
FILE *fp;
puts("请输入路径名,带文件后缀名:");
gets(filename);
if((fp = fopen(filename,"r")) == NULL)
{
fprintf(stderr,"输入的路径错误");
exit(1); 
}
while(!feof(fp))//不为0 
{
fgets(buf,BUFSIZE,fp);
printf("%s",buf);
}
fclose(fp);
return 0;
}


是这个,我写的是发送到屏幕了,题目要求是发送到打印机(stdprn ),我理解的是这个输出流吧。


补充:
如果是要输出到打印机的话,按你的要求,只要改
printf("%s",buf);

fprintf(stdprn,"%s",buf);
但问题是
1,stdprn是早期TC支持的标准打印设备,目前的系统早就不支持了
(你不会还在用古老的TC吧?)
2.你的程序中也没有看到每页55行的设置,
正如我上面所说,标准C/C++是不能直接支持打印机的,你必须按你的操作系统,编写相应的程序
追问:每页55行不知道该怎么写
补充:这种题目根本不能算是C/C++的,每页55行还涉及打印设置
没有系统要求前提,根本没办法实现的
(你若指定操作系统,如windwos 10,可以编写,但有些复杂)
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值