char *a[10] = {"Fortran","Basic","pascal","C","C++"};

a[10]不是应该是指针数组么。为什么这么写呢?应该存放着char*类型的呀,为什么是char类型的呢?... a[10]不是应该是指针数组么。
为什么这么写呢?
应该存放着char * 类型的呀,为什么是char类型的呢?
展开
 我来答
嚒頭
推荐于2017-08-13 · TA获得超过103个赞
知道答主
回答量:122
采纳率:0%
帮助的人:79.1万
展开全部
char *a[10]
[ ] 优先级高于 *
所以这是一个数组
数组的元素类型是 char *
即字符型指针,指向字符串
char *a[10] = {"Fortran","Basic","pascal","C","C++"};
a[0] = "Fortran"; a[1] = "Basic"; ...............
不是 char
如果是char
char a[3] = { 'a', 'b', '\0'};
类同 char a[3] = "ab";
追问
按照上面定义的,*a[0]是不是 "F"
追答
是的 *a[0] ,a[0][0] 都是 F
char *a[10] = {"Fortran","Basic","pascal","C","C++"};

如果这样初始化, 就不能去修改字符串。
loveaf123
2012-11-08
知道答主
回答量:31
采纳率:0%
帮助的人:17.2万
展开全部
char[x] 里面存的是字符串的首地址
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式