打印
[DSP编程]

全局常量定义问题

[复制链接]
1322|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
cmzhao|  楼主 | 2014-12-18 16:18 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
初学DSP,在定义全局变量时遇到了一些问题。

上图是我定义的全局变量,PipeNum为整型常量,PipeDensity和PipeSpeed为定点数组,但是编译时出现了如下问题:

错误貌似是说PipeNum不是常量,把PipeNum改成数字再编译就通过了,但是由于PipeNum用的地方很多,变成数字改起来很不方便。
我想问下既然已经把PipeNum定义成了常量,为什么编译时还会报错?有什么解决方法吗?谢谢!

相关帖子

沙发
wangch_sh| | 2014-12-18 17:33 | 只看该作者
定义成宏。

使用特权

评论回复
板凳
海中水| | 2014-12-18 18:57 | 只看该作者
将其改为int const试试呢?

使用特权

评论回复
地板
cmzhao|  楼主 | 2014-12-18 21:36 | 只看该作者
海中水 发表于 2014-12-18 18:57
将其改为int const试试呢?

貌似没有用,函数内还是函数外都会报错

使用特权

评论回复
5
zhangmangui| | 2014-12-18 21:48 | 只看该作者
2楼说的对   定义成宏
不然你讲一个常量赋给其他变量  
编译器报错    赋值前后表达式不匹配

使用特权

评论回复
6
海中水| | 2014-12-18 23:20 | 只看该作者
cmzhao 发表于 2014-12-18 21:36
貌似没有用,函数内还是函数外都会报错

你中间有对它进行什么操作吗?

使用特权

评论回复
7
aresc| | 2014-12-18 23:27 | 只看该作者
这种用法只有C++支持,标准C是不支持这种用法的。

使用特权

评论回复
8
zhangmangui| | 2014-12-18 23:38 | 只看该作者
aresc 发表于 2014-12-18 23:27
这种用法只有C++支持,标准C是不支持这种用法的。

说的比较权威

使用特权

评论回复
9
海中水| | 2014-12-18 23:48 | 只看该作者
aresc 发表于 2014-12-18 23:27
这种用法只有C++支持,标准C是不支持这种用法的。

语法学的不错啊!

使用特权

评论回复
10
cmzhao|  楼主 | 2014-12-19 00:44 | 只看该作者
aresc 发表于 2014-12-18 23:27
这种用法只有C++支持,标准C是不支持这种用法的。

额,那如果我想在多个地方引用同一个数的话,要怎么定义呢?

使用特权

评论回复
11
cmzhao|  楼主 | 2014-12-19 10:27 | 只看该作者
zhangmangui 发表于 2014-12-18 21:48
2楼说的对   定义成宏
不然你讲一个常量赋给其他变量  
编译器报错    赋值前后表达式不匹配 ...

定义成宏编译成功了。我开始2了,忘记把;去掉,结果总出不来。。谢谢啦~~

使用特权

评论回复
12
zhangmangui| | 2014-12-19 21:19 | 只看该作者
cmzhao 发表于 2014-12-19 10:27
定义成宏编译成功了。我开始2了,忘记把;去掉,结果总出不来。。谢谢啦~~ ...

解决了就好     一般都是这种小问题

使用特权

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

本版积分规则

6

主题

36

帖子

0

粉丝