永发信息网

linux c fgets 函数 出现段错误 请大神指正

答案:2  悬赏:70  手机版
解决时间 2021-02-12 06:38
int ifmount(char **spath,char **dpath)
{
FILE* fp;
char buf[BUF];
char *sou, *des;
int sp=0,dp=0;

if(fp = fopen("/proc/mounts","r") == NULL)
{perror("File open error\n");}
else
{
printf("aaaaaaaaaaaaaaa\n");
while((fgets(buf,BUF,fp)) != NULL)
{
printf("aaaaaaaaaaaaaaa\n");
sou=strtok(buf," ");
des=strtok(NULL," ");
sp=strcmp(*spath,sou);
dp=strcmp(*dpath,des);
if(sp == 0 && dp == 0)
{
fclose(fp);
return 1;
}
}
}
fclose(fp);
return -1;
}
BUF 是宏定义 值为1024 第一个aaaaaaaaaaaaaaa 可以打印出来第二个aaaaaaaaaaaaaa打印不出来程序段错误请大神指正。
最佳答案
出现段错误的原因是fp这个指针没有正确的赋值。
应该在赋值的时候加上括号
if ((fp = fopen("/proc/mounts","r") )== NULL)

或者 写成两行
fp = fopen("/proc/mounts","r") ;
if (fp == NULL) ....
全部回答
支持一下感觉挺不错的
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
双辽农场新型农村合作医疗办公室地址有知道的
tiguan allspace7座会国产吗
胜潮公司在哪里啊,我有事要去这个地方
八角亭加油站怎么去啊,有知道地址的么
【踏花归去马蹄香】踏花归去马蹄香是出自哪首
【光明新区光明中学】深圳市光明高级中学和光
去上谷乡竹林寺,从承德火车站下车怎么走?
向阳双语幼儿园在哪里啊,我有事要去这个地方
卡拉多蓝天碧水店在什么地方啊,我要过去处理
庆云医药有限责任公司城乡药品批发配送中心在
哪成语中有姗要所有的,和姗有关的成语
南湖水族宠物超市(滁州二店)这个地址在什么地
鲁迅的名著中描写人物外貌的句子和环境的句子
由于空气有什么?,才会对空气中的物体产生压强
中坡在哪里啊,我有事要去这个地方
推荐资讯
眼睛里进沙子怎么办?拜托各位大神
怀孕初期为什么会感冒
岩鱼村地址在哪,我要去那里办事
梧桐树叶上听秋雨下一句,对联
英雄联盟有哪些英雄是伪娘
内存条是假的的话会怎么样
【苔原地带】栖息在北极苔原地带的麝牛在遇到
7k7k赛尔号厄斯怎么抓
哪里学六爻预测、四柱命理比较好?
正面是21JEWELS AUTOMATIC 反面REIMAHNO;601M
三四前后由好码指哪些数字
一部电影:一个拿镰刀的男人杀了好多的人,最后
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?