array2是一个二维数组的数组名,所以array2+i就是指向了第i行数组首地址的地址

来源:互联网 发布:mac iphone传照片 编辑:程序博客网 时间:2024/06/03 22:41

http://www.nowcoder.com/test/question/done?tid=2198842&qid=26202#summary

http://zhidao.baidu.com/link?url=lMLTfNE9DnfgVP1zSgzjhLuCUAav1k3imfrJdMhwaLdsgVYIhonC7eWtjTZyJcSB74Tk0osylik4YDXPA2Zp54UqvsNO1BpF6yZFiODcW1W


array2是一个二维数组的数组名,所以array2+i就是指向了第i行数组首地址的地址

举报| 2014-10-04 21:21katncandix11 | 浏览 48 次  悬赏:50
 编程语言
所以*(array2+i)就是第i行数组首地址。这是为什么啊,要怎么理解呀????????
2014-10-04 21:44网友采纳
char *array2[3]={ "Hello,this is a sample!", "Hi,good morning.", "Hello world" };定义了一个以array2为名称的指向char类型的指针数组,该数组的每个单元都是一个指针,这些指 针各指向一个字符串。把指针数组名array2当作一个指针的话,它指向数组的第0号 单元,它的类型是char**,它指向的类型是char *。 *array2也是一个指针,它的类型是char*,它所指向的类型是char,它指向的地 址是字符串"Hello,this is a sample!"的第一个字符的地址,即’H’的地址。 array2+1也是一个指针,它指向数组的第1号单元,它的类型是char**,它指向 的类型是char *。
0 0
原创粉丝点击