5160|7

80

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

2407这样简单的程序都有问题,请教高手 [复制链接]

#include \"2407C.h\"



initial()
{
   
        *IMR=0x0000;
        *IFR=0x0FFFF;
       
        *SCSR1=0x0285;
        *WDCR=0x006F;
        *WSGR=0x0000;

}



         
void main(void)
{
   
       
    initial();
   
    int i=0x01;

        port000C=i;
          
}
build后提示如下:
\"test.c\", line 59: [F001] syntax error at or near symbol \'int\'
\"test.c\", line 61: [F108] \'i\' undefined
是变量的定义有问题吗?
请高手指点!

最新回复

对于有的问题看来还是要追根到底搞清楚啊,对整个编程都有帮助,要不然中间突然想用一个临时变量,还要到开头去定义,太麻烦了  详情 回复 发表于 2007-7-14 03:36
 
点赞 关注

回复
举报

66

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
把 int i 的声明放到 main 开头就行了。

void main(void)
{
int i=0x01;
    initial();
    port000C=i;
           
}
 
 

回复

75

帖子

0

TA的资源

一粒金砂(初级)

板凳
 

谢谢

如你所说,问题解决了,是不是所有的变量都要放到main的开头来声明?
 
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

4
 
       在C语言中,函数内的自动变量是不是必须在开头定义?我在手册中一直没找到这句话,所以不敢下结论。但是所读过的程序中,人人都是在开头定义自动变量,好像没有例外。
 
 
 

回复

77

帖子

0

TA的资源

一粒金砂(初级)

5
 

还有一个问题请教

看了一下C语言的书,也只是强调对于变量要先定义,后使用,没有强调一定要在函数的开始定义,为了安全还是要放在开始吧
另外我编译后出现如下warning:
warning: creating output section vectors without SECTIONS specification
不知道是怎么回事,中断向量表是asm文件,段名为vectors,在。cmd中如下:
PAGE 0:  VECS:    origin =00000h, length =00040h
.vectors > VECS   PAGE 0
有什么问题吗?
 
 
 

回复

67

帖子

0

TA的资源

一粒金砂(初级)

6
 

ok了

我把。 vectors > VECS   PAGE 0 中的。去掉后就可以了,

 
 
 

回复

49

帖子

0

TA的资源

一粒金砂(初级)

7
 
   找到了:“变量的声明(包括初始化)除了可以紧跟在函数开始的花括号之后,还可以紧跟在任何其他标志复合语句开始的左花括号之后。”,所以写成:
void main(void)
{
    initial();
      {
i      nt i=0x01;

        port000C=i;
     }
           
}

也是允许的。
 
 
 

回复

82

帖子

0

TA的资源

一粒金砂(初级)

8
 

厉害

对于有的问题看来还是要追根到底搞清楚啊,对整个编程都有帮助,要不然中间突然想用一个临时变量,还要到开头去定义,太麻烦了
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表