上海妇科疾病研究所 上海女性不孕医院 上海引产医院 无痛引产痛不痛 上海人流医院 白癜风治疗医院 上海小儿脑瘫医院 上海女子医院
BF561开发中,为什么字符数组存放的元素个数大于脚标?-Blackfin-技术中心-国内专业ADI仿真器,Blackfin开发板,DSP芯片,软件算法,解决方案提供商-北京四维卓信电子有限公司
用户名: 密码:
主页 设为首页 加入收藏
      产品中心       技术中心       下载中心        社区新闻        诚聘英才       大学计划        关于我们       技术论坛
  您的当前位置:ADSP开源社区 >> 技术中心 >> Blackfin 今天是:
技术中心  
SigmaDSP
SHARC
Blackfin
TigerSAHRC
UCLinux
ADSP-218X
视频培训
ADI DSP仿真器
产品导航
ADI DSP仿真器
SigmaDSP开发板
ADI A2B总线开发板
SHARC DSP开发板
销售网络
Blackfin  
BF561开发中,为什么字符数组存放的元素个数大于脚标?
[ 作者:OP ] [ 来源:ADSP开源社区 ] [ 发布时间:2018-3-16 ]

    问题:

    我使用的是BF561,使用异步存储的端口来调LCD。在deal.txt记事本里放了512个数用于连点划线。原来运行在uclinux下的程序中有下边这句:

    char path[16] = "/mnt/deal.txt";

    在裸机下,我把程序修改为:

    char path[16] = "F:\\deal.txt" ;

    编译的时候出错,显示cc0144:  error: a value of type "char [39]" cannot be used to initialize an entity of type "char [16]"。

    把path[16]改为39或更大的数,则编译、运行成功。

    我不太明白,明明这个文件夹里放了512个数,为什么path这个数组只有39个元素?

 

    答:path里面放的不是你deal.txt文件的内容,而是"F:\\deal.txt"  ,另外你检查一下其他地方有没有定义char path[39]

    问:多谢!其他地方没有定义char path[39]。

    char是八位有符号二进制数,char path[39]就意味着"F:\\deal.txt"这个字符数组里有39个这样的数。但是那个deal.txt文件里存放的数明显要多很多呀,而且每个数的数值都比较大,比如25631。难道是这其中有什么转换机制吗?

    答:如果你要读取deal.txt内部数据,需要使用文件系统,用fopen 和fread读取。不能直接赋给数组

    任何问题ADI DSP的技术及商务问题,均可联系OP的QQ:5516164,邮箱:sale@openadsp.com

   

联系我们 | 关于我们 | 免责声明 | 诚征英才 | 友情链接
Copyright 2019 All rights reserved  本网页版权属Open ADSP所有
北京海淀区中关村大街32号新中发市场3659 邮编100100
电话 18611096839 
粤ICP备14035876号-1