1. char *buf[] //指针数组 实质上还是属于一维数组,特殊的是每个元素都是指针,2.char buf[10][30] 在传入被调用函数中时,对应的参数不应该只是一个二级指针,如(char **buf),因为与第一种内存模型不一样. 实质上是属于二维数组,每个元素都是实际的值.3. ch...
分类:
其他好文 时间:
2016-01-21 23:35:51
阅读次数:
173
指针是C语言的灵魂,我想对于一级指针大家应该都很熟悉,也经常用到:比如说对于字符串的处理,函数参数的“值,结果传递”等,对于二级指针或者多级指针,我想理解起来也是比较容易的,比如二级指针就是指向指针的指针.....n级指针就是....但是可能大家比较不容易理解的是,二级指针或者多级指针用在哪里呢?怎...
分类:
编程语言 时间:
2016-01-21 09:12:36
阅读次数:
188
现在有这种需求,在main函数中建立一个二叉树的root结点的指针,在tree_create函数中malloc或者new一个二叉树结点,然后在main函数中能正常的访问这个新建的结点。注:这里的tree_create的返回值为void,也就是说不能通过函数的返回值返回指向结点的指针。能想到的办法就是...
分类:
其他好文 时间:
2016-01-14 18:54:23
阅读次数:
232
本题与之前单链表逆置不同的是,加入了范围判断。依然沿用之前单链表逆置的方法,只需要再做好起始节点和末尾节点的判断说起来容易,做起来复杂,特别是单链表,很容易把人搞晕,所以,在编程之前最后画图理清思路。这次在头结点的处理上,不同于以往设置临时头结点的方法,使用了二级指针,这种方法写出来的代码可能比较少...
分类:
其他好文 时间:
2015-12-24 19:16:26
阅读次数:
124
一.浅谈指针 说起指针,不知道有多少的C学者被这座大山所困住,很多人都说数组是最难学的,但是没想到指针比数组还难。没听多久就完全被绕晕了,什么一级指针啊,二级指针啊,三级指针啊,最后还莫名其妙的出来一个n级指针,就这样一节课下来就完全晕了。当然这里面还包括一些和指针搭配用的伙伴。数组、函数、结构.....
分类:
其他好文 时间:
2015-12-04 06:31:03
阅读次数:
227
#include #include #include //两个辅助指针变量挖字符串, 的第三种内存模型 char ** spitString3(char *buf1,char c,int *count) //**pp二级指针做输入 { char *p=NULL, *pTmp = NULL; int ...
分类:
其他好文 时间:
2015-11-26 01:02:02
阅读次数:
189
一.如果要将二维数组传给一个函数,有几种传参方式?1).直接将二维数组传给函数。eg:voidtest(intarr[3][4]);2).以数组指针的方式传入。eg:voidtest(int(*arr)[4]);第一种方式很容易理解。第二方式我们来分析分析。首先将二维数组看作是一个一维数组,有三个元素,arr[0],arr..
分类:
编程语言 时间:
2015-11-24 06:33:42
阅读次数:
556
在C语言中,数组名就是一个指针常量,保存数组的首地址。因为数组名是一个常量指针常量,不能修改其指向的值,因此可以定义一个指针变量指向数组。这样使用数组名加下标可访问数组中的元素,使用指针名加下标也可访问数组中的元素。这些在本章前面已经介绍过了。现在如果再定义一个二级指针变量,让其指向一级指针,就可使...
分类:
其他好文 时间:
2015-11-21 18:26:57
阅读次数:
419
//指针数组 char *pszBuf[] = {"123", "456", "789"}; //二维数组 char *psz[3][4] = {"123", "456", "789"}; //手工二维内存 char **p3 = (char **)malloc(3 * sizeof(char *)...
分类:
其他好文 时间:
2015-11-18 22:58:29
阅读次数:
251