请教一个CCS C编译问题

[复制链接]
3235|4
 楼主| xujian5607 发表于 2009-5-11 16:02 | 显示全部楼层 |阅读模式
请教各位老师:我在学CCS C编译器时发现:当在程序空间设置一个常量数组如:const char s[15] = {"this is a test"}时,如设一个指针变量:char *ptr,当想试用该指针查找上面数组元素时,如写上:ptr = s;的初始化语句时,在编译时该语句会出错,而把const char s[15] = {"this is a test"};语句改为不在程序空间设置(即:char s[15] = {"this is a test"};)时,ptr = s;语句就编译通过了,这是为什么?
yewuyi 发表于 2009-5-11 16:18 | 显示全部楼层

因为char *ptr的定义决定了指针是指向了RAM

但S被定义到了ROM,所以就报错了。<br /><br />如下看看行不行:<br />const&nbsp;char&nbsp;*ptr=s;
lanyong 发表于 2009-5-12 09:06 | 显示全部楼层

我来看看

很就以前看ccs的手册说不支持常数指针.<br /><br />不知道现在版本的是否可以.
 楼主| xujian5607 发表于 2009-5-12 16:23 | 显示全部楼层

一个CCS C编译问题

谢谢2楼,const&nbsp;char&nbsp;*ptr=s;我也试过还是不行.后来看了下CCS手册,3楼说得对,它不支持常数指针.
yewuyi 发表于 2009-5-12 17:12 | 显示全部楼层

PICC下是可以使用的,换成PICC的编译器把

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

本版积分规则

1

主题

4

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部