博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

数组指针和指针数组

Posted on 2014-10-17 22:17  六年一班刘同学  阅读(157)  评论(0编辑  收藏  举报
 1 // 数值指针和指针数组
 2 // C语言环境
 3 
 4 #include "stdafx.h"
 5 
 6 int main(int argc, char* argv[])
 7 {
 8     //数组指针,是一个指针. 这个指针指向一个数组.
 9     //指针数组,是一个数组. 这个数组里面存放的元素是指针.
10     //怎么看?
11     //看谁的优先级高,优先高的就是重点.
12 
13     char p[] ={'A','B','C','D'} ;
14     //这是一个名字叫p的字符数组,这个数组有4个char型的元素.
15 
16     char* pchar[] = {"一年级","2年级","3年级","4年级"} ;
17     //因为[ ]的优先级比 * 要高,重点就是[ ],也就是数组.
18     //所以这个是一个数组,这个数组名字叫 pchar
19     //数组里面放4个元素,这4个元素是指针(char*),根据指针里面的内容作为地址所找到的是char型.
20     // " " 说明是一个字符串,字符串理解为是一个地址.
21     //因为汇编语句里面,是先把字符放到某个内存里面,而再使用这个内存的地址进行赋值给其他变量.
22 
23     char b[] = {'A','B','C'};
24     //这是一个名字叫b的字符数组,这个数组有3个char型的元素.
25 
26     char (*cha)[3] = {&b};
27     //因为() 的优先级比 [] 要高,( )里面的一个*,说明重点就是( )里面的 * ,也就是指针.
28     //所以这是一个指针,指针的类型是 char (*)[3] ,这个指针名字叫 cha
29     //这个指针内容是一个数组的首地址, 这个数组里面必须要有3个char型的元素. 
30 
31     return 0;
32 }