24小时热门版块排行榜    

查看: 431  |  回复: 1

风开始的地方

金虫 (小有名气)

[求助] [求助]关于fscanf的应用

Bit8 ReadParameter_GCODEPROCESS(FILE *fp, GCODEPROCESSTITEM *pElement)
{
        //"序号", "物理变量名称","数据类型","当前值","默认值","最大值","最小值"
       
        if( !fp || !pElement)
                return 0;
        Bit8 bRet;
       
        fscanf(fp, "%d,", &pElement->id); //参数编号
        fscanf(fp, "%s, ", pElement->sName); //参数变量名称
        fscanf(fp, "%d,", &pElement->bType); //数据类型
       
        if( pElement->bType == DTYPE_INTEGER)
                fscanf(fp, "%d,", &pElement->data_value.i); //当前值
        else //浮点型
                fscanf(fp, "%.4f,", &pElement->data_value.f); //当前值
       
        if( pElement->bType == DTYPE_INTEGER)
                fscanf(fp, "%d,", &pElement->def_value.i); //缺省值
        else //浮点型
                fscanf(fp, "%.4f,", &pElement->def_value.f); //缺省值
       
        if( pElement->bType == DTYPE_INTEGER)
                fscanf(fp, "%d,", &pElement->max_value.i); //最大值
        else //浮点型
                fscanf(fp, "%.4f,", &pElement->max_value.f); //最大值
       
        if( pElement->bType == DTYPE_INTEGER)
                fscanf(fp, "%d", &pElement->min_value.i); //最小值
        else //浮点型
                fscanf(fp, "%.4f", &pElement->min_value.f); //最小值
       
        fscanf(fp, "%c", &bRet); //换行符
       
        return 1;
}
调用的地方
ReadParameter_GCODEPROCESS(fp, &gCodeProcess.m_nSubsection);
ReadParameter_GCODEPROCESS(fp, &gCodeProcess.m_nAirValveClose);
ReadParameter_GCODEPROCESS(fp, &gCodeProcess.m_nOriginalPoint);
ReadParameter_GCODEPROCESS(fp, &gCodeProcess.m_nFstWorkStPoint);
ReadParameter_GCODEPROCESS(fp, &gCodeProcess.m_nPrincipalAxis)ReadParameter_GCODEPROCESS(fp, &gCodeProcess.m_nFirstPowerOn);

变量定义地方

#define HRG_PARANAME_STR_LEN   64

typedef struct tagGCODEPROCESS_ITEM                // 定义参数的编号、物理量名称、值;用于参数管理
{       
        uBit32 id;        //参数编号       

        ParamValue data_value;  //当前值
        ParamValue def_value;   //缺省值
        ParamValue max_value;        //最大值
        ParamValue min_value;        //最小值
       
        Bit8 sName[HRG_PARANAME_STR_LEN];// 参数物理量名称
        Bit8 bType;                                                 //数据类型

}GCODEPROCESSTITEM;

typedef struct tagGCODEPROCESS  // 加工工艺内容的参数值
{
        GCODEPROCESSTITEM m_nSubsection;                                GCODEPROCESSTITEM m_nAirValveClose;                        GCODEPROCESSTITEM m_nOriginalPoint;                        GCODEPROCESSTITEM m_nFstWorkStPoint;                        GCODEPROCESSTITEM m_nPrincipalAxis;                                GCODEPROCESSTITEM m_nFirstPowerOn;
               
}GCODEPROCESS;

GCODEPROCESS  gCodeProcess;


       
我用上面的函数读取数据,但是出现有些能读取,有些不能读取,
求大家帮助
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

stxiahu

木虫 (小有名气)

【答案】应助回帖

感谢参与,应助指数 +1
建议全部用%s形式读取,然后用atof或者atoi转换成需要的数据类型试试。
2楼2013-03-16 20:40:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 风开始的地方 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +5 LwdutQ8HoqWP 2026-09-13 5/250 2026-09-14 22:25 by vZfe6xYu34yj
[找工作] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +5 3n8v2C8RimXI 2026-09-13 5/250 2026-09-14 22:13 by vZfe6xYu34yj
[博后之家] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +5 3n8v2C8RimXI 2026-09-13 5/250 2026-09-14 22:12 by vZfe6xYu34yj
[考研] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +4 3n8v2C8RimXI 2026-09-13 5/250 2026-09-14 22:00 by vZfe6xYu34yj
[博后之家] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +4 QUjhNVAcOSff 2026-09-13 4/200 2026-09-14 21:37 by vZfe6xYu34yj
[考博] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +5 QUjhNVAcOSff 2026-09-13 5/250 2026-09-14 21:36 by vZfe6xYu34yj
[考研] 售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急 +4 QUjhNVAcOSff 2026-09-13 5/250 2026-09-14 21:33 by vZfe6xYu34yj
[找工作] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +3 QUjhNVAcOSff 2026-09-13 5/250 2026-09-14 21:25 by vZfe6xYu34yj
[博后之家] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +4 QUjhNVAcOSff 2026-09-13 5/250 2026-09-14 21:24 by vZfe6xYu34yj
[公派出国] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +5 QUjhNVAcOSff 2026-09-13 7/350 2026-09-14 21:21 by vZfe6xYu34yj
[考研] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +3 s3fFTmArrBt6 2026-09-14 3/150 2026-09-14 18:01 by Aj1rhIDL5ixY
[考博] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +4 s3fFTmArrBt6 2026-09-14 4/200 2026-09-14 17:25 by Aj1rhIDL5ixY
[教师之家] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +3 LwdutQ8HoqWP 2026-09-13 4/200 2026-09-14 16:13 by Aj1rhIDL5ixY
[硕博家园] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +3 QUjhNVAcOSff 2026-09-13 3/150 2026-09-14 15:09 by Aj1rhIDL5ixY
[考研] 售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急 +3 QUjhNVAcOSff 2026-09-13 3/150 2026-09-14 14:57 by Aj1rhIDL5ixY
[基金申请] 求教各位大神:2026教育部人文社科青年基金项目何时公示呀? +5 云宴山人 2026-09-10 7/350 2026-09-14 12:11 by ecnu2013
[找工作] 浙江师范大学是怎么坑我的 +6 recruit123 2026-09-09 6/300 2026-09-14 12:00 by 萨仁其其格
[考博] 西北工业大学材料学院电化学传感与催化课题组招收2027年推免研究生、博士生、博士后 +3 马方园 2026-09-10 4/200 2026-09-14 09:29 by Chem张zz
[教师之家] 浙江师范大学是怎么坑我的 +10 recruit123 2026-09-09 15/750 2026-09-13 10:45 by seaskyy
[有机交流] 科研求助 10+4 我吃一只鱼 2026-09-07 4/200 2026-09-10 08:32 by 0940628
信息提示
请填处理意见