parsing restarts here after previous syntax error

[复制链接]
 楼主| rainsinging 发表于 2013-1-27 10:33 | 显示全部楼层 |阅读模式
#include<stm32f10x_lib.h>
#include"sys.h"
#include"delay.h"
#include"led.h"
#include"key.h"
#include"exti.h"
int main(void)                     //提示:main.c(8): error:  #130: expected a "{"
{
Stm32_Clock_Init(9);
delay_init(72);
LED_Init();
EXTIX_Init();
while(1);
}
/*exti.c的内容*/
#include"sys.h"
#include"usart.h"
#include"delay.h"
#include"exti.h"
#include"led.h"
#include"key.h"
void EXTI9_5_IRQHandler(void)
{                                             //提示:..\HARDWARE\exti.c(9): warning:  #12-D: parsing restarts here after previous syntax error
delay_ms(10);
if(S1==0)
  LED1=!LED1;
EXTI->PR=1<<5;
}
void EXTIX_Init(void)              //提示:..\HARDWARE\exti.c(15): error:  #247: function "EXTIX_Init" has already been defined
{                              
RCC->APB2ENR|=1<<6;
GPIOE->CRL|=0XFFFFF0FF;
GPIOE->CRL&=0X00000800;
Ex_NVIC_Config(GPIO_E,5,FTIR);
MY_NVIC_Init(2,2,EXTI9_5_IRQChannel,2);
}
/*led.h内容*/
#ifndef __LED_H
#define __LED_H
#include"sys.h"
#define LED1 PCout(6)
void LED_Init(void);            //提示:..\HARDWARE\led.h(10): error:  #130: expected a "{"
#endif
/*exti.h内容*/
#ifndef __EXTI_H
#define __EXTI_H
void EXTIX_Init(void)
#endif


错误提示:
Build target 'Target 1'
compiling main.c...
main.c(8): error:  #130: expected a "{"
compiling exti.c...
..\HARDWARE\led.h(10): error:  #130: expected a "{"
..\HARDWARE\exti.c(9): warning:  #12-D: parsing restarts here after previous syntax error
..\HARDWARE\exti.c(15): error:  #247: function "EXTIX_Init" has already been defined
Target not created

我觉得那里没什么地方需要“{”啊,exti.c的那个warning我也搞不清楚是什么意思,而我在exti.h写了个EXTIX_Init的函数声明为什么在exti.c文件中说我已经定义了?求各位高手大侠指点迷津啊,不胜感激!!
uet_cache 发表于 2013-1-27 10:37 | 显示全部楼层
#include 后面加空格

评论

还是谢谢你了  发表于 2013-1-29 11:40
 楼主| rainsinging 发表于 2013-1-27 10:42 | 显示全部楼层
uet_cache 发表于 2013-1-27 10:37
#include 后面加空格

试过了,还是一样的。。。
 楼主| rainsinging 发表于 2013-1-27 10:50 | 显示全部楼层
更正一下
GPIOE->CRL|=0XFFFFF0FF;
GPIOE->CRL&=0X00000800;
改为
GPIOE->CRL&=0XFFFFF0FF;
GPIOE->CRL|=0X00000800;
我的一点失误。。。
错误提示还是一样
uet_cache 发表于 2013-1-27 11:08 | 显示全部楼层
那就看下你上面的.H文件中,有错的地方了。。
 楼主| rainsinging 发表于 2013-1-27 11:52 | 显示全部楼层
uet_cache 发表于 2013-1-27 11:08
那就看下你上面的.H文件中,有错的地方了。。

.H中的错误提示只有void LED_Init(void); //提示:..\HARDWARE\led.h(10): error:  #130: expected a "{"
这句话的错误提示搞得我莫名其妙,这只是个普通的函数声明而已
 楼主| rainsinging 发表于 2013-1-29 11:39 | 显示全部楼层
哎,搞不懂,重新建工程就通过了。。。
就是一枪 发表于 2013-4-23 10:29 | 显示全部楼层
楼主。你好。我也是碰到了同样的问题,最后发现是在一个头文件里面有个函数声明少加了个“;”,而且是在编译器报错的上一个include里面。

评论

对头!  发表于 2015-7-18 14:47
1010565306 发表于 2015-5-13 10:34 | 显示全部楼层
本帖最后由 1010565306 于 2015-5-13 10:36 编辑

更改设置中的define,改为你出错地方的版本

我的是把MD改为HD
捕获.PNG

评分

参与人数 3威望 +3 收起 理由
291149005 + 1 很给力!
水滴滴水007 + 1 很给力!
hello_海涛 + 1 很给力!

查看全部评分

冰河w 发表于 2015-5-13 14:56 | 显示全部楼层
估计不是丢了;就是},再不然就是;不是英文格式
水滴滴水007 发表于 2015-7-21 15:03 | 显示全部楼层
解决的办法如图所示。问题的原因是在编译过程中换过device或者是在一开始选择器件的时候,选择错了。编译器不能通过。
2.png
巅峰之舟 发表于 2016-1-28 09:53 | 显示全部楼层
就是一枪 发表于 2013-4-23 10:29
楼主。你好。我也是碰到了同样的问题,最后发现是在一个头文件里面有个函数声明少加了个“;”,而且是在编 ...

对,按着你的方法解决了:victory:
d865841995 发表于 2016-4-11 10:18 | 显示全部楼层
水滴滴水007 发表于 2015-7-21 15:03
解决的办法如图所示。问题的原因是在编译过程中换过device或者是在一开始选择器件的时候,选择错了。编译器 ...

谢谢,问题解决了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

14

主题

80

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部