单片机C语言编译错误:requires ANSI-style prototype

已定义的play函数的格式为:voidplay(ucharsong[][2]),并且写在了main函数的前面然后在main函数后面调用play函数:voidINT0_in... 已定义的play函数的格式为:void play(uchar song[][2]),并且写在了main函数的前面

然后在main函数后面调用play函数:
void INT0_int() interrupt 0
{
while(1)
{ //其中song1、2、3都是数组
if(s==1) paly(song1);
if(s==2) play(song2);
if(s==3) play(song3);
if(s==4)break;
}
}
错误提示为:
error C267: 'paly': requires ANSI-style prototype
展开
 我来答
SWDgreat
2019-07-13 · TA获得超过8405个赞
知道答主
回答量:1012
采纳率:80%
帮助的人:24.4万
展开全部

需要要把调用的子函数放到main前面,或者在main函数前面先把需要调用的子函数定义声明一下。

requires ANSI-style prototype的意思是:需要ANSI样式原型。

扩展资料

单片机汇编指令是为解决某些特定的问题代码中必须嵌入汇编语言以代替C语言完成的单片机的编程,汇编语言对于程序调试是不可或缺的。它包括:算术操作类指令,布尔变量操作类指令,逻辑操作数指令,控制转移类指令。

直接使用汇编指令编写单片机程序,对硬件的控制更加直接,可以直接操作物理地址,寄存器,端口等;其它更高级的语言对硬件的控制是依赖于类库来实现的。

对于一些对程序大小和运行速度有非常严苛要求的项目,都必须使用汇编指令。C语言只是为了方便编写,与机器打交道的都是2进制代码。

参考资料来源:百度百科-单片机

参考资料来源:百度百科-汇编语言

参考资料来源:百度百科-单片机汇编指令

依然特雷西sky
高粉答主

2020-03-22 · 繁杂信息太多,你要学会辨别
知道答主
回答量:1511
采纳率:33%
帮助的人:68.8万
展开全部

单片机C语言编译错误:requires ANSI-style prototype是设置错误造成的,解决方法为:

1、打开Keil后选择【File】下的【new】新建一个空白文档。将编辑好的程序源码复制到该文件中。

2、选择左上角的保存按钮进行保存,将弹出保存对话框。

3、选择保存路径和编辑文件名。记住,这里的文件名很重要,如果你是C语言程序的话,加上.c后缀,如果你是用汇编语言,加上.ASM后缀。这样,Keil就能自动识别你的文件类型了。

4、现在你就可以将保存的文件添加到项目中了,项目文件要提前在[Project]中新建。右击选择【Source Group1】点击【Add Files to Group..。

5、在弹出的对话框中选择[文件类型]为All files,这个很关键。然后选择你要添加的文件。点击Add添加。

6、切换到[output]选项卡选中【Create HEX FILE】,就可以在编译成功后自动生成.hex文件。编译按钮在左上角3个按钮,从左到右依次点击,如果源码没错,都可以编译通过了。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yesyes科
2020-03-22 · TA获得超过2.6万个赞
知道答主
回答量:608
采纳率:0%
帮助的人:9.9万
展开全部

单片机C语言编译错误:requires ANSI-style prototype,是编译过程错误造成的,解决方法如下:

1、编程前保存文件,单击文件菜单,下拉菜单中选择保存按钮。

2、输入文件名,文件类型选择为.c类型。

3、然后开编辑,首先,定义头文件,头文件一般为stdio.h。

4、接着,定义主函数,主函数名为main。

5、然后,定义程序中要使用的变量,int为整型变量,float为实型变量,char为字符型变量,string为字符串变量。

6、C语言中,还可以用while语句执行循环,当条件成立时执行循环体,直到条件不成立时退出循环。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
feiling208
推荐于2018-03-13 · TA获得超过492个赞
知道小有建树答主
回答量:177
采纳率:0%
帮助的人:63万
展开全部
这个跟代码在文本中的编码格式有关,比如ANSI,或者UTF-8等格式

你试着手工在编译器中输入一遍,或者将文本拷贝入记事本,保存为ANSI(一般这个比较通用)格式,如若不行,请讲其他格式一一尝试

如若仍不行,恕本人才疏学浅未能解惑
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
HappyleiPlus
2012-07-20
知道答主
回答量:20
采纳率:0%
帮助的人:6.7万
展开全部
子函数调用放前面,定义子函数
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式