
C
地精工程师
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
C 语言的方法传值
最近写链表删除的时候遇到一个问题: void removeFromLast(node * head) { if(head==NULL) { printf("have no number"); } if(head->next==NULL) { head=NULL; free(head); pri原创 2017-09-05 15:32:15 · 309 阅读 · 0 评论 -
C 静态链表实现逻辑
静态链表问题实质是:不使用指针,使用数组实现链表结构,所以关键是不用结构体,通过自己实现分配节点和回收节点实现类似系统的内存回收的效果; 思路:建立两个数组,一个记录数据,一个记录数组是否被占用(类似内存是否被占用): 关键是maloc2 和 fre 函数,自己想到的方式就是这样,需要分配定量的两份内存,复杂度嘛#include <stdio.h> #include <stdlib.h> #in原创 2017-09-29 11:57:43 · 504 阅读 · 0 评论 -
C语言的struct定义
首先最为普通的定义方式: struct name{ int a; int b; }; 使用时需要使用声明:struct name a; 分配内存malloc(sizeof(struct name)); 2,使用typedef 定义别名: typedef struct{ int a; int b }name2; 这种定义方式定义结构体使用: name2 a; 分配内存 mal原创 2017-09-02 15:32:36 · 759 阅读 · 0 评论 -
C 语言的static 与head File
最近被这两个概念弄的头有点炸,垃圾书还是毁人生啊,其实他们基本没啥关系。 static 修饰函数和全局变量时是类似于java的private 的,都是限制在当前文件中使用,不会被其他的文件所调用 head File 是一种暴露函数的东西,但是是对于库文件来说的,当然还是包括使用公用的一些结构体和变量时候比较方便。。我用的时候就是感觉没啥用,实际函数在C里面本身都是全局的,如果在相同工作空间里面原创 2017-09-11 11:31:23 · 344 阅读 · 0 评论 -
C的二维数组理解指针以及存储的方式
int testDoubleRow(){ int row=2; int cow=5; int i,j; char ** doub=(char **)malloc(row*sizeof(char*)); doub[0]=(char *)malloc(cow*sizeof(char)); doub[1]=(char *)malloc(cow*sizeof原创 2017-09-01 14:25:41 · 642 阅读 · 0 评论 -
C
试着用c把数据结构都实现一遍,大学的东西都忘光了,试着享受处理问题的过程的东西吧,纯粹玩乐,没啥意义 先从C使用开始,记录点东西。 首先C的特证:过程性语言,较为底层。 指针:数据的内存地址,类似链表的地址分配形式,高级语言的传引用就是传递的指针,通过*()可以操作地址的值,通过&()能够得到地址的值,通过sizeof() 可以看到所占用的字节(byte)数量,通过malloc可以动态分配一原创 2017-09-01 11:02:31 · 424 阅读 · 0 评论 -
二叉树的删除策略
删除有两个节点的二叉树节点的删除策略 找到右子树中值最小的节点,或者找到左子树中最大的节点,称之为最优值节点,这个节点的值是最适合提替换要删除节点的,替换值之后,删除最优值节点,因为最优值节点一定是不会是有两个子节点的节点,所以删除就方便许多;原创 2017-09-08 09:44:31 · 321 阅读 · 0 评论 -
C 链表 木有用,写着玩
//移除最后一个的节点 使用二级指针更好 int removeFromLast(node ** firstlocation) { node *head = *firstlocation; if (head == NULL) { printf("have no number"); return 0; } if (head->next == NULL) { *firstlocati原创 2017-09-06 17:43:54 · 286 阅读 · 0 评论 -
C语言实现动态链表结构
类似java中的ArrayList 实现一个长度变化的数组结构体,嗯,实现起来很简单,重要的是数组长度的增加的处理,数组中插入数据的元素移动以及删除时候的元素移动; 定义结构体typedef struct ArrayList{ int allLen; //数组总长度 int nowlen;//数组现在的元素个数 int * list; }array;然后是数组增删的算法:/原创 2017-09-23 08:46:55 · 926 阅读 · 0 评论 -
静态链表 2 结构体数组的实现
之前通过数组实现的,现在用结构体数组实现的,关键是结构体数组,然后写好分配及回收算法就行了//结构体数组 typedef struct { int data; int cur; }component,slink[MAXSIZE];/* * newlink.c * * Created on: 2017-9-29 * Author: Administrator */原创 2017-09-30 11:35:22 · 519 阅读 · 0 评论