完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
请问指针变量作函数的形参(*SENTENCE),
void wrlcd(u8 HANG,u8 LIE,u8 *SENTENCE)// 行、列、数据 { u8 position; position=HANG+LIE; SEND_DATA_SER(1,position); LCD_delay(); while(*SENTENCE) SEND_DATA_SER(0,*SENTENCE++); } 调用的时候用数组名作函数的实参,怎么有错误呢?(编译时这两句有错误wrlcd( 1, 1,hanzi); 显示const u8 * 不兼容u8* ) const u8 hanzi[] = {"汉字"}; int main(void) { LCD_Config(); LCD_init(); while(1) { wrlcd( 1, 1,hanzi);// 行、列、数据 } } |
|
相关推荐
2 个讨论
|
|
你那个u8 hanzi[] = {"汉字"} 前面有个 const,指向的是程序 ,
所以你前面的void wrlcd(u8 HANG,u8 LIE,u8 *SENTENCE)就得用void wrlcd(u8 HANG,u8 LIE,const u8 *SENTENCE) 这个是AVR与51的不一样,51的code,形参也可以调用的。 如果你内存比较大,而文字不多,可以直接 unsigned char hanzi[] = "汉字";放在数据区也未尝不可 |
|
|
|
|
|
只有小组成员才能发言,加入小组>>
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 03:50 , Processed in 0.748538 second(s), Total 51, Slave 39 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号