OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4172|回复: 2

尝试格式化读TXT文件,编译出错

[复制链接]

13

主题

30

帖子

0

精华

初级会员

Rank: 2

积分
137
金钱
137
注册时间
2013-10-2
在线时间
20 小时
发表于 2017-3-11 17:57:00 | 显示全部楼层 |阅读模式
我在 39 实验 FATFS实验工程下,fattester.c 文件中添加一个格式化读写函数fscanf来读TXT文件的内容的函数,目的就是检测一下能否将10个学生的信息以制表符间隔开打印,但编译时提示错误:
..\OBJ\FATFS.axf: Error: L6200E: Symbol __stdout multiply defined (by stdio_streams.o and usart.o).


函数定义如下:


int ReadTxt(char *path){
typedef struct student{
        char name[32];
        int  no;
        char sex[16];
        float score;
} stu;


    FILE * r=fopen(path, "r");

    stu a[10];
    int i=0;
    while(fscanf(r,"%s%d%s%f",a.name,&a.no,a.sex,&a.score)!=EOF)
    {
         printf("%s\t%d\t%s\t%g\n",a.name,a.no,a.sex,a.score);
         i++;
    }  

    fclose(r);

    return 0;
}

请求帮助!!



正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

16

主题

216

帖子

1

精华

高级会员

Rank: 4

积分
970
金钱
970
注册时间
2016-11-24
在线时间
156 小时
发表于 2017-3-13 16:25:19 | 显示全部楼层
把结构体放到函数外面来定义
回复 支持 反对

使用道具 举报

13

主题

30

帖子

0

精华

初级会员

Rank: 2

积分
137
金钱
137
注册时间
2013-10-2
在线时间
20 小时
 楼主| 发表于 2017-3-13 16:49:38 | 显示全部楼层
结构体放到函数外面来定义,结果还是同样的编译错误。..\OBJ\FATFS.axf: Error: L6200E: Symbol __stdout multiply defined (by stdio_streams.o and usart.o).
只有将usart.c 改为不支持printf 函数,编译才会通过,但无法使用printf 来串口打印。
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-19 02:12

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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