OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4600|回复: 3

求助:对战舰综合实验中那个菜单数组,怎么用二级指针输出其元素呢

[复制链接]

4

主题

23

帖子

0

精华

初级会员

Rank: 2

积分
100
金钱
100
注册时间
2012-3-26
在线时间
4 小时
发表于 2014-8-16 17:36:10 | 显示全部楼层 |阅读模式
5金钱
[mw_shl_code=c,true]#include <stdio.h> #include <stdlib.h> //编译器:TDM-GCC-481 //系统设置主目录表 char *sysset_mmenu_tbl[3][19] = { { "1.时间设置", "2.日期设置", "3.闹钟时间设置", "4.闹钟开关设置", "5.闹钟铃声设置", "6.语言设置", "7.数码相框设置", "8.MP3播放模式设置", "9.MP3音效设置", "10.FM发射开关设置", "11.FM发射频率设置", "12.FM收音设置", "13.背光设置", "14.屏幕校准", "15.传感器校准", "16.系统文件更新", "17.系统信息", "18.系统状态", "19.关于" }, { "1.時間設置", "2.日期設置", "3.鬧鐘時間設置", "4.鬧鐘開關設置", "5.鬧鐘鈴聲設置", "6.語言設置", "7.數碼相框設置", "8.MP3播放模式設置", "9.MP3音效設置", "10.FM發射開關設置", "11.FM發射頻率設置", "12.FM收音設置", "13.背光設置", "14.屏幕校準", "15.傳感器校準", "16.系統文件更新", "17.系統信息", "18.系統狀態", "19.關於" }, { "1.TIME SET", "2.DATE SET", "3.ALARM TIME SET", "4.ALARM ON/OFF SET", "5.ALARM RING SET", "6.LANGUAGE SET", "7.DIGITAL PHOTO FRAME SET", "8.MP3 MODE SET", "9.MP3 EFFICT SET", "10.FM SEND ON/OFF SET", "11.FM SEND FREQ SET", "12.FM RADIO SET", "13.BACKLIGHT SET", "14.TOUCH SCREEN ADJUST", "15.3D ADJUST", "16.SYSTEM FILE UPDATE", "17.SYSTEM INFORMATION", "18.SYSTEM STATUS", "19.ABOUT" } }; int main() { unsigned char i,j; for(i=0;i<3;i++) { printf("*****************\n"); for(j=0;j<19;j++) { printf("%s\n",sysset_mmenu_tbl[j]); } } return 0; } [/mw_shl_code]

我用codeblocks 13.12编译。
怎么用一个二级指针来输出这个数组的内容呢?

最佳答案

查看完整内容[请看2#楼]

这种情况,貌似不能用二级指针解决. 因为编译器无法定位指针的偏移量. 自然也就无法准确指向正确的位置.
学无止境
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2014-8-16 17:36:11 | 显示全部楼层
这种情况,貌似不能用二级指针解决.
因为编译器无法定位指针的偏移量.
自然也就无法准确指向正确的位置.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

4

主题

23

帖子

0

精华

初级会员

Rank: 2

积分
100
金钱
100
注册时间
2012-3-26
在线时间
4 小时
 楼主| 发表于 2014-8-16 17:53:21 | 显示全部楼层
我这样试了一下,输出的结果是对的,但是原理对不对呢?

[mw_shl_code=c,true]char **p=(char **)&sysset_mmenu_tbl; for(i=0;i<3;i++) { printf("*****************\n"); for(j=0;j<19;j++) { printf("%s\n",*(p+i+j)); } }[/mw_shl_code]


学无止境
回复

使用道具 举报

4

主题

23

帖子

0

精华

初级会员

Rank: 2

积分
100
金钱
100
注册时间
2012-3-26
在线时间
4 小时
 楼主| 发表于 2014-8-17 21:23:37 | 显示全部楼层
回复【3楼】正点原子:
---------------------------------
好吧,谢谢原子个的回答
学无止境
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-7-4 11:44

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表