打印

parsing restarts here after previous syntax error

[复制链接]
17895|14
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
#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 后面加空格

使用特权

评论回复
评论
rainsinging 2013-1-29 11:40 回复TA
还是谢谢你了 
板凳
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;
我的一点失误。。。
错误提示还是一样

使用特权

评论回复
5
uet_cache| | 2013-1-27 11:08 | 只看该作者
那就看下你上面的.H文件中,有错的地方了。。

使用特权

评论回复
6
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 "{"
这句话的错误提示搞得我莫名其妙,这只是个普通的函数声明而已

使用特权

评论回复
7
rainsinging|  楼主 | 2013-1-29 11:39 | 只看该作者
哎,搞不懂,重新建工程就通过了。。。

使用特权

评论回复
8
就是一枪| | 2013-4-23 10:29 | 只看该作者
楼主。你好。我也是碰到了同样的问题,最后发现是在一个头文件里面有个函数声明少加了个“;”,而且是在编译器报错的上一个include里面。

使用特权

评论回复
评论
xia_318 2015-7-18 14:47 回复TA
对头! 
9
1010565306| | 2015-5-13 10:34 | 只看该作者
本帖最后由 1010565306 于 2015-5-13 10:36 编辑

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

我的是把MD改为HD

捕获.PNG (12.38 KB )

捕获.PNG

使用特权

评论回复
评分
参与人数 3威望 +3 收起 理由
291149005 + 1 很给力!
水滴滴水007 + 1 很给力!
hello_海涛 + 1 很给力!
10
冰河w| | 2015-5-13 14:56 | 只看该作者
估计不是丢了;就是},再不然就是;不是英文格式

使用特权

评论回复
11
水滴滴水007| | 2015-7-21 15:03 | 只看该作者
解决的办法如图所示。问题的原因是在编译过程中换过device或者是在一开始选择器件的时候,选择错了。编译器不能通过。

2.png (81.42 KB )

2.png

使用特权

评论回复
12
巅峰之舟| | 2016-1-28 09:53 | 只看该作者
就是一枪 发表于 2013-4-23 10:29
楼主。你好。我也是碰到了同样的问题,最后发现是在一个头文件里面有个函数声明少加了个“;”,而且是在编 ...

对,按着你的方法解决了:victory:

使用特权

评论回复
13
d865841995| | 2016-4-11 10:18 | 只看该作者
水滴滴水007 发表于 2015-7-21 15:03
解决的办法如图所示。问题的原因是在编译过程中换过device或者是在一开始选择器件的时候,选择错了。编译器 ...

谢谢,问题解决了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

14

主题

80

帖子

0

粉丝