QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 756|回复: 2

关于/proc文件系统的调用问题

[复制链接]
发表于 2005-8-2 23:09:40 | 显示全部楼层 |阅读模式
我用C调用/proc来取得系统处理器信息
fp=fopen("/proc/cpuinfo","r");

当我这样写的时候就会错误:
fgets(str, NUM,fp);

而当我这样写的时候就不会出错:
while(!eof(fp))
{
     fscanf(fp,"%c",&c);
     printf("%c",c);
}

这是为什么?请问我如果想每次读入一个字符串怎么做?
发表于 2005-8-3 12:53:47 | 显示全部楼层
如果用fgets只能读到换行符之前的字符串,因为fgets遇到换行符时就不再读了,而你使用的fscanf就没有这种规则。
如果想每次读入一个字符串,你可以不停的fgets,
while(!feof(fp))
{
fgets(str, NUM,fp);
str[NUM]='\0';
printf("%s",str);
}
回复

使用道具 举报

 楼主| 发表于 2005-8-3 14:24:43 | 显示全部楼层
呵呵,好久没写,都忘了C字符串末尾还要有个'/0'了,呵呵,失策失策
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-5 16:05 , Processed in 0.034371 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表