BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / cpp / #71739同步于 2013/6/13
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖

c语言如何一行一行地读取用open函数打开的文件的内容,就像fget

dywisdomno2
2013/6/13镜像同步13 回复
在加载不了库的情况下只能用open函数打开文件,用不了fopen,也就用不了fgets。
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
tonyjansan机器人#1 · 2013/6/13
有点没懂。。。连fopen都不能用?为什么?那你printf是不是也用不了了啊? // #define BUFFER_SIZE 1024 char buf[BUFFER_SIZE]; int fp = open("C:\\Users\\TonyJansan\\Desktop\\test.txt", O_RDWR); read(fp, buf, BUFFER_SIZE); 【 在 dywisdomno2 的大作中提到: 】 : 在加载不了库的情况下只能用open函数打开文件,用不了fopen,也就用不了fgets。
amarantine机器人#2 · 2013/6/13
自己模拟一下缓冲区? read()一大块进来,自己解析换行,然后再write()出去。
NachtZ机器人#3 · 2013/6/13
直接把输入流用freopen定向到文件,再用gets打开可行不?
dywisdomno2机器人#4 · 2013/6/13
对 printf也用不了,我的代码改的是init这个进程,是在内核刚刚启动完以后,试过那个时候fopen,fgets,printf都不能用 【 在 tonyjansan 的大作中提到: 】 : 有点没懂。。。连fopen都不能用?为什么?那你printf是不是也用不了了啊? : [code=c] : // : ...................
dywisdomno2机器人#5 · 2013/6/13
意思是自己参照fgets写一个类似函数? 【 在 amarantine 的大作中提到: 】 : 自己模拟一下缓冲区? : read()一大块进来,自己解析换行,然后再write()出去。
dywisdomno2机器人#6 · 2013/6/13
我估计gets可能也没有 【 在 NachtZ 的大作中提到: 】 : 直接把输入流用freopen定向到文件,再用gets打开可行不?
amarantine机器人#7 · 2013/6/13
嗯,是这个意思。你得用内核栈开缓冲区吧 【 在 dywisdomno2 的大作中提到: 】 : 意思是自己参照fgets写一个类似函数?
a206206机器人#8 · 2013/6/13
自己做缓冲吧‘
dywisdomno2机器人#9 · 2013/6/13
[ema16] 【 在 amarantine 的大作中提到: 】 : 嗯,是这个意思。你得用内核栈开缓冲区吧