我是靠谱客的博主 重要小白菜,这篇文章主要介绍Keil C51编译报错error C141: syntax error,现在分享给大家,希望可以做个参考。

错误代码:

 

复制代码
1
2
3
4
5
6
7
8
1 typedef unsigned char uchar 2 uchar KeyRowColumnScan() 3 { 4 GPIO_KEY = 0x0f; 5 uchar key_value = 0; // 报错行 6 // 省略 7 return key_value; 8 }

 

错误信息:

key_array.c(44): error C141: syntax error near ‘uchar’

错误原因:

由于Keil、ADS等某些遵循老的C标准的编译器,在函数定义的内部,必须把所有的局部静态变量和自动变量都声明/定义了之后,然后才能开始后续的代码书写,否则编译器会报错,将代码更改如下后,编译正确。

复制代码
1
2
3
4
5
6
7
8
1 typedef unsigned char uchar 2 uchar KeyRowColumnScan() 3 { 4 uchar key_value = 0; // 必须在函数开始出定义所有变量 5 GPIO_KEY = 0x0f; 6 // 省略 7 return key_value; 8 }

 

转载于:https://www.cnblogs.com/undermyownmoon/p/7628743.html

最后

以上就是重要小白菜最近收集整理的关于Keil C51编译报错error C141: syntax error的全部内容,更多相关Keil内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(90)

评论列表共有 0 条评论

立即
投稿
返回
顶部